我想用CakePHP显示一个表单,用户可以在其中选择一个员工。蛋糕显示输入字段为"选择"这很好。很遗憾,选择输入字段仅显示员工的id
,而不是prename
和lastname
。
型号:
提醒:
worker_id (reference to Worker model)
工人:
id
prename
lastname
以下是PHP部分:
echo $this->Form->create('Reminder',
array('action' => 'add',
'inputDefaults' => array(
'label' => false,
'div' => false
)
)
);
echo $this->Form->input('worker_id', array('empty' => 'Choose an employee'));
echo $this->Form->button('Save', array('type' => 'submit', 'class' => 'btn btn-green'));
我找不到显示课程prename
的{{1}}和lastname
的方法,但在选择字段中保留Worker
作为选项值。
如何做到这一点?
答案 0 :(得分:1)
您需要创建$ your_listing,如下所示
$your_listing = array('2'=>'John Fleming','3'=>'Justin Bond');
并在表单助手中使用此数组,如下所示
echo $this->Form->input('worker_id', array('empty' => 'Choose an employee','options'=>$your_listing));
所以在上面的例子中,选择框变为
<select name="worker_id">
<option id="">Choose an employee</option>
<option id="2">John Fleming</option>
<option id="3">Justin Bond</option>
</select>
答案 1 :(得分:1)
您可以使用数组指定选择输入的选项。
$options = array(
'Value 1' => 'Label 1',
'Value 2' => 'Label 2'
)
echo $this->Form->input('worker_id', $options, array('empty' => 'Choose an employee'));
在您的情况下,您的标签应为Worker.id => Worker.prename + Worker.lastname