我有两个表用户和Areas.Areas与users有关系。所以我在Areas表中添加了users_id。烘焙后我得到输出正常。但是这里的区域添加表格用户字段在选择框中显示users_id。在这里,我想显示users_name。如何更改它?
这是型号代码
MadAreas' => array(
'className' => 'MadAreas',
'foreignKey' => 'users_id'
)
在控制器中
$madAreas = $this->MadArea->Users->find('list');
在add.ctp
中 echo $this->Form->input('users_id',array( 'label' => false, 'class'=>'form-control' ));
答案 0 :(得分:3)
尝试在find语句中指定所需的字段:
$madAreas = $this->MadArea->Users->find('list', array(
'fields' => array('id','username')
)
);
如@ mponos-george的答案中所述,更改模型中的$displayField
无论如何都应该这样做,只需确保在更改模型值后清除缓存文件。
答案 1 :(得分:0)
答案 2 :(得分:0)
默认情况下,cakephp从你的用户数据库表中找到name字段。但是你在这里使用了username.So这里你必须定义字段,这是由Ayman给出的。你也可以通过改变你的字段用户名来解决这个问题。 name.Then如果你再次烤它,你可以看到名字。
答案 3 :(得分:0)
您是否在渲染视图之前在控制器中设置了数据?
$this->Set(compact('madAreas'));