3.7.3.1.1 find('first')
find('first', $params)
'first' は find のデフォルトの型で、1件の結果を返します。1件だけ結果が欲しい時は、これを使ってください。コントローラ中で使う場合の簡単な例を、いくつか次に示します。
function some_function() {
...
$this->Article->order = null; // これがセットされているとリセットされます
$semiRandomArticle = $this->Article->find();
$this->Article->order = 'Article.created DESC'; // モデルがデフォルトの並び順を持つようにシミュレートします
$lastCreated = $this->Article->find();
$alsoLastCreated = $this->Article->find('first', array('order' => array('Article.created DESC')));
$specificallyThisOne = $this->Article->find('first', array('conditions' => array('Article.id' => 1)));
...
}
function some_function() {...$this->Article->order = null; // これがセットされているとリセットされます$semiRandomArticle = $this->Article->find();$this->Article->order = 'Article.created DESC'; // モデルがデフォルトの並び順を持つようにシミュレートします$lastCreated = $this->Article->find();$alsoLastCreated = $this->Article->find('first', array('order' => array('Article.created DESC')));$specificallyThisOne = $this->Article->find('first', array('conditions' => array('Article.id' => 1)));...}
最初の例では、find にパラメータが一切渡されていません。したがって、検索条件と並び順が使用されません。find('first') が返す値は、次のような形式になります。
Array
(
[ModelName] => Array
(
[id] => 83
[field1] => value1
[field2] => value2
[field3] => value3
)
[AssociatedModelName] => Array
(
[id] => 1
[field1] => value1
[field2] => value2
[field3] => value3
)
)
find('first') において使用する追加のパラメータは、前述したもので全てです。


























