cake-logo

findメソッドの引数

findメソッドは、sqlでいうselect文にあたるメソッドです。その名の通りデータの検索を行います.  メソッドに引数を与えて,処理を色々と変えてきます。

【find関数の引数について】

第1引数

  • find(‘all’) : 条件に該当するデータ全てを取得します.
  • find(‘first’) : 条件に該当するデータの最初の1レコードを取得します.
  • find(‘list’) : 条件に該当するデータをidとラベルが対になった形で取得します.
  • find(‘count’) : 条件に該当するデータの件数を取得します.

*条件を指定しない場合は,これだけでも利用できます

第2引数

  • conditions : データの検索条件を指定します.すごくよく使うので後述します.
  • fields : どのフィールドのデータを取得するかを指定します.
  • order : ソートの仕方を指定します.
  • limit : データを取得する件数を指定します.
  • offset : データ検索を何件目から行うかを指定します.

*よく使うのはcondisions(where句に相当する), order(order by句に相当する),limit(limit句に相当する)の三つだと思います.

condisionsの書き方について

array(
‘conditions’ => array(
     ‘モデル名.id’ => 1
}
}
というような形で記述すれば良いです.
public function index(){
            $this->set(‘data’,$this->Board->find(‘first’,array(
                ‘conditions’ => array(‘Board.id’ => 48))
                ));
        }
という感じで記述するとidが48のものを取得します.find(‘first’)を使ってますが,idが48のデータは1つしかありえないので,firstで一件だけ取得する書き方の方が効率的です.
メインのfind関数以外にも、たくさんのコントローラーメソッドがあります。それらはまた次回にします。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です