Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在CakePHP中将prename和lastname显示为选择选项_Php_Forms_Cakephp_Select - Fatal编程技术网

在CakePHP中将prename和lastname显示为选择选项

在CakePHP中将prename和lastname显示为选择选项,php,forms,cakephp,select,Php,Forms,Cakephp,Select,我想用CakePHP展示一个表单,用户可以在其中选择一名员工。Cake将输入字段显示为“select”,这很好。不幸的是,选择输入字段只显示员工的id,而不是prename和lastname 型号: 提醒: worker_id (reference to Worker model) 工人: id prename lastname 以下是PHP部分: echo $this->Form->create('Reminder', array('action' => 'ad

我想用CakePHP展示一个表单,用户可以在其中选择一名员工。Cake将输入字段显示为“select”,这很好。不幸的是,选择输入字段只显示员工的
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')); 
我没有找到显示类
Worker
prename
lastname
的方法,但将
id
保留为选择字段中的选项值


如何做到这一点?

您需要创建$your\u清单,如下所示


$your_listing=array('2'=>'John Fleming','3'=>'Justin Bond')您可以使用数组指定选择输入的选项

$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

我没有得到您的要求。请举例说明。我想您要求的是选项属性,$this->Form->input('worker_id',array('empty'=>'Choose an employee','options'=>$your_listing));你好,Nilesh,我补充了一些解释。Nilesh,直接从控制器获取
$your_listing
数组的最佳方法是什么?如果您能提供此信息,我将批准它作为答案!谢谢你,伙计。$your_listing=$this->Article->find('list',array('conditions'=>array('Article.status'=>'pending'),'fields'=>array('id','fullname'));您还需要添加这是在模型中。。。public$virtualFields=array('fullname'=>'CONCAT(User.first\u name,“,User.last\u name)”)@NileshDharmik代码段用于可运行的JS/HTML/CSS内容,对于任何其他内容,请使用普通代码块!非常感谢你!