test

CakePHP Note

モデルの属性

UPDATE:2009.03.12

デフォルトの設定を使う項目は設定しなくても構いません。

  • $name(モデルの名前/PHP4の場合必要)
  • $useDbConfig(使用するデータベースの設定:/app/config/database.phpで設定している。デフォルトは‘default’)
  • $useTable(データベースのテーブル名/テーブルを使用しない場合は'false'。デフォルトは‘null'で命名規則に従いモデル名を小文字/複数形にしたものが使われる)
  • $primaryKey(主キーとして使うかカラム名:デフォルトは‘id’)
  • $displayField(リスト表示で使用するカラム名:設定しない時は'name'または'title'という名前のカラムが使用されます。それも無いときはid)
  • $id(操作対象のプライマリー・キー)
  • $data(操作対象のデータ)
  • $validate(データ検証のルール)
  • $cacheQueries(クエリのキャッシュを有効にするかどうか)
  • $whitelist(保存を許可するフィールド名、デフォルトは空で全てのフィールド)
  • $actsAs(モデル内で使用するビヘイビア)

クエリのデフォルトに関する設定

  • $recursive(find()で取得する関連レコードのレベル数 )
  • $order(デフォルトで使用するソート順)

アソシエーションに関する設定

  • $belongsTo(アソシエーションに関する設定)
  • $hasOne(アソシエーションに関する設定)
  • $hasMany(アソシエーションに関する設定)
  • $hasAndBelongsToMany(アソシエーションに関する設定)

テーブルを使用しない場合

  • $useTableをfalseに設定
  • $_schemaを設定またはschema()を実装する。

テーブルを変更したい場合

命名規則以外のテーブル名を使用したい場合は$useTableを設定する。
動的に変更したい場合は、setSource(table_name)メソッドを使う。