データベースに次のテーブルがあります。
- リフト
- 車両
- メーカー
リフトは車両に属します
車両所属メーカー
メーカーhasManyVehicles
LiftsController.php addメソッド:
public function add() {
if ($this->request->is('post')) {
$this->Lift->create();
$this->request->data['Lift']['user_id'] = $this->Auth->user('id');
if ($this->Lift->save($this->request->data)) {
$this->Session->setFlash(__('The lift has been saved'));
$this->redirect(array('action' => 'my_lifts'));
} else {
$this->Session->setFlash(__('The lift could not be saved. Please, try again.'));
}
}
$vehicles = $this->Lift->Vehicle->find('all', array('fields' => array('id', 'model', 'manufacturer_id')));
$towns = $this->Lift->TownFrom->find('list', array('order' => 'county ASC, name ASC', 'fields' => array('id', 'name', 'county')));
$this->set(compact('users', 'vehicles', 'towns'));
}
LiftsController.phpビューを追加:
echo $this->Form->input('vehicle_id');
プリントスクリーン:
したがって、必要なのは、製造元IDの製造元名の代わりに表示することです。すべてのモデルで、$displayFieldは正しい値に設定されています