我正在使用 CakePHP 2.0。是否可以在不使用 virtualFields 的情况下在选择/下拉框中显示多个字段?
现在我有这个:
$this->set('venues', $this->Game->Venue->find('list', array('fields' => array('id', 'name', 'town'))));
问题是当两个字段相等时(在本例中为名称和城镇),可选项目不会显示在列表中。在这种情况下,只有名称,不能选择。
我正在使用 CakePHP 2.0。是否可以在不使用 virtualFields 的情况下在选择/下拉框中显示多个字段?
现在我有这个:
$this->set('venues', $this->Game->Venue->find('list', array('fields' => array('id', 'name', 'town'))));
问题是当两个字段相等时(在本例中为名称和城镇),可选项目不会显示在列表中。在这种情况下,只有名称,不能选择。
不知道为什么你不能创建一个虚拟字段,但你可以在控制器中手动创建字段,只需遍历行并制作你自己的列表。
$venues = $this->Game->Venue->find('all', array('fields' => array('id', 'name', 'town')));
foreach($venues as $venue){
$list[$venue['Venue']['id']] = $venue['Venue']['name'].' '.$venue['Venue']['town'];
}
$this->set('venues', $list);