find時にモデルでデータを整形する方法

よく使うので忘れないようにメモ。
afterFindで取得した値を整形して返す。

class MyModel extends AppModel {
	var $name = 'MyModel';
	// find時にデータを整形
	function afterFind( $results ) {
		foreach ( $results as $key => $val ) {
			if ( isset( $val[ $this->name ][ 'zip' ] ) ) {
				// zipをハイフンで分割して取得
				$aryZip = explode( '-' , $val[ $this->name ][ 'zip' ] );
				$results[ $key ][ $this->name ][ 'zip1' ] = $aryZip[0];
				$results[ $key ][ $this->name ][ 'zip2' ] = $aryZip[1];
			}
		}
		return $results;
	}
}

One Response to “find時にモデルでデータを整形する方法”

  1. Tweets that mention モデルで取得した時点でデータを加工する方法 -- Topsy.com Says:

    [...] This post was mentioned on Twitter by kenji nishimura and みはbot, cakephp_jp. cakephp_jp said: モデルで取得した時点でデータを加工する方法 よく使うので忘れないようにメモ。 afterFindで取得した値を整形 [...]

Leave a Reply