我从表中在控制器中创建了一个数组:
$tasktemplateResults = $this->Tasktemplate->find('list');
在视图中,我有一个表单助手,可以创建一个下拉列表:
echo $this->Form->input('Tasktemplate.id', array('options' => array($tasktemplateResults),'label' => 'Task'));
html输出如下:
<div class="input select">
<label for="TasktemplateId">Task</label>
<select name="data[Tasktemplate][id]" id="TasktemplateId">
<option value="1">Test task</option>
<option value="2">Second test task</option>
</select>
</div>
我想有这个HTML输出:
<div class="input select">
<label for="TasktemplateId">Task</label>
<select name="data[Tasktemplate][id]" id="TasktemplateId">
<option value="Test task">Test task</option>
<option value="Second test task">Second test task</option>
</select>
</div>
如何获得与上面显示的数组相同的名称和值对?
最佳答案 您可以向find’list’方法添加参数,以指定要用于键和值的字段.
例:
$usernameMap = $this->Article->User->
find('list', array('fields' => array('User.username', 'User.first_name')));