'conditions' => array('MySampleData.id' => $id)MySampleDataモデルクラスのidが$idのデータを検索する、という設定です。このように特定の項目の値を指定して検索する場合、「’モデル名.項目名’ => 値」というように連想配列を用意しておきます。テーブル名ではなく、モデル名なので注意しましょう。'conditions' => array('MySampleData.id <' => $id)こうなります。連想配列のキーワードのテキストに、'MySampleData.id <'というように設定されていることがわかるでしょう。このようにすることで不等号を指定することができます。テキストの「あいまい検索」の場合なら、「like」を最後につければいいでしょう。※リストが表示されない場合
AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。
※MySampleDatasController.phpのメソッド
function find(){
$this->layout = "SamplMe";
$this->set("header_for_layout",
"Sample Application");
$this->set("footer_for_layout",
"copyright by SYODA-Tuyano. 2011.");
if (isset($this->data['id'])){
$id = $this->data['id'];
$status = array(
'conditions' =>
array('MySampleData.id' => $id)
);
$data = $this->MySampleData->find('first', $status);
} else {
$data = null;
}
$this->set('data',$data);
}
※find.ctp
<h1>Index Page</h1>
<p>MySampleData Find View.</p>
<form method="post" action="./find">
ID:<input type="text" name="id" />
<input type="submit" />
</form>
<table>
<?php if (isset($data)): ?>
<tr>
<td>Name:</td>
<td><?php echo $data['MySampleData']['name']; ?></td>
</tr>
<tr>
<td>Mail:</td>
<td><?php echo $data['MySampleData']['mail']; ?></td>
</tr>
<tr>
<td>Tel:</td>
<td><?php echo $data['MySampleData']['tel']; ?></td>
</tr>
<?php endif; ?>
</table>
| << 前へ |