CakePHP, CakePHP(バージョン2.x), データベース

バージョン:CakePHP 2.x

アソシエーションされたモデルを一括で保存したい場合は、
オプションの「deep」にtrueを設定します。

CakePHP, CakePHP(バージョン2.x), データベース

バージョン:CakePHP 2.x

CakePHPで、アソシエーションが設定されたモデルのデータを削除する方法についてです。

CakePHP, CakePHP(バージョン2.x), データベース

バージョン:CakePHP 2.x

saveallはid列のデータがあるかどうかで、新規登録か更新処理が決まります。

したがって、下記のようなArrayを作ると、
新規登録と更新処理を同時に行うことができます。

CakePHP, CakePHP(バージョン2.x), データベース

バージョン:CakePHP 2.x

saveallを使ってデータの一括更新を行う方法です。
Usersテーブルにidとnameというフィールドがあり、nameを一括で更新する簡単なサンプルを記載します。

CakePHP, CakePHP(バージョン2.x), データベース

バージョン:CakePHP 2.x

CakePHPでデータを保存するためには「save」を使用します。
ビューで適切にFormHelperを使用していれば、データを「$this->request->data」で受け取り簡単にデータの登録を行うことができます。

CakePHP, CakePHP(バージョン2.x), データベース

バージョン:CakePHP 2.2.2
モデルで「belongsTo」や「hasMany」などを指定している場合に、
一時的にアソシエーションを解除する場合はunbindModelを使用します。
既にアソシエーションを定義している時に、取得するデータ量を減らしたい場合などに有効です。

CakePHP, CakePHP(バージョン2.x), データベース

バージョン:CakePHP 2.2.2
・基本
とりあえず「all」を指定しておけば、すべてのデータを取得することができます。

$this->モデル名->find('all');

CakePHP, CakePHP(バージョン2.x), データベース

バージョン:CakePHP 2.2.2
◆その他の条件
条件は「array」に纏めて記述します。
細かい条件は下記の通り。

CakePHP, CakePHP(バージョン2.x), データベース

バージョン:CakePHP 2.2.2
指定した条件の前後のデータを取得するには、neighborsを使用します。
「前へ」「次へ」のようなリンクを作る場合に使用できます。

CakePHP, CakePHP(バージョン2.x), データベース

バージョン:CakePHP 2.2.2
threadedを使うとデータのカテゴリ分けなど、ツリー構造でデータを取得できます。
フィールド「parent_id」をキーにして階層化したデータを取得するそうです。