我有一个关系游戏属于类型。在游戏的添加视图中,我看到一个带有各种类型标题的下拉列表,它们在我的表中是 VARCHAR。但是当我选择一个并按保存时,它会保存类型的 ID 而不是标题(尽管在我的下拉列表中我选择了标题。当我在 PHPmyAdmin 中创建游戏时,一切正常。我的代码:
游戏模型
class Game extends AppModel {
public $name = 'Game';
public $primaryKey = 'id';
public $belongsTo = array
(
'Type' => array (
'className' => 'Type',
'foreignKey' => 'type_id'
));
在 GameController 中添加功能
public function add() {
$types = $this->Game->Type->find('list',array('fields' => array('title')));
$this->set('types',$types);
if ($this->request->is('game')) {
if ($this->Game->save($this->request->data)) {
$this->Session->setFlash('Your game has been created.');
$this->redirect(array('action' => 'index'));
} else {
$this->Session->setFlash('Unable to add your game.');
}
}
}
添加类型视图
<h1>Add Game</h1>
<?php
echo $this->Form->create('Game',array('action' => 'edit'));
echo $this->Form->input('tablename',array('rows' => '1'));
echo $this->Form->input('date');
echo $this->Form->input('type_id');
echo $this->Form->end('Save Games');
?>
我希望有人能找到解决办法。如果需要更多信息,请随时询问。
提前感谢您和最良好的祝愿。