我正在构建一个应用程序,管理员可以将多个用户添加到组中。在UserController的Add动作中我已经:
$this->set('groups', $this->User->Group->find('list'));
输出应该是一个选择框,其中组表中当前存在不同的组。
Groups table:
'id' 'group' 'comments'
Model (user):
public $belongsTo = array('Group');
UserController:
$this->set('groups', $this->User->Group->find('list'));
View (Users/add)
echo $this->Form->input('Group_id');
我做错了什么?
答案 0 :(得分:0)
看起来没错,我假设你在users表中有group_id字段。你可能想尝试几件事。
更改选择框的显示,如下所示
echo $ this-> Form-> input('group_id',$ groups);
答案 1 :(得分:0)
字符的情况在编程中非常重要。 不仅适用于文件,还适用于类名,在您的情况下也适用于字段名称。 否则你的代码将无法正常工作:
echo $this->Form->input('group_id');
应该解决问题。
答案 2 :(得分:0)
如果我没错,find('list')正在寻找id和name,所以你必须在你的情况下指定字段,因为你缺少名字字段 我希望有帮助
答案 3 :(得分:0)
在Group
课程中添加此行
var $displayField = 'group';
这将告诉Cake,对于此类,它应该将group
视为标准模型中的name
字段,而find('list')
将产生您想要的结果。