CakePHP3多对多关系
我试图保存一个在CakePHP3中具有多对多关系的表单,但我无法正确地呈现该表单。(用户标签) 在控制器中,我设置了要编辑的对象:CakePHP3多对多关系,php,cakephp,many-to-many,cakephp-3.0,Php,Cakephp,Many To Many,Cakephp 3.0,我试图保存一个在CakePHP3中具有多对多关系的表单,但我无法正确地呈现该表单。(用户标签) 在控制器中,我设置了要编辑的对象: $user = $this->Users->get($id, [ 'contain' => ['Tags'] ]); $this->set(compact('user')); 我认为: $options = [ '1' => 'Tag 1', '2' => 'Tag 2' ]; echo $this-&g
$user = $this->Users->get($id, [
'contain' => ['Tags']
]);
$this->set(compact('user'));
我认为:
$options = [
'1' => 'Tag 1',
'2' => 'Tag 2'
];
echo $this->Form->select('tags', $options, [
'multiple' => 'checkbox'
]);
我的问题是加载时未选中所选标记,我如何解决此问题?对于这种
归属关联,您应该使用字段名中的\u id
键,这样表单助手可以神奇地拾取值并选中您的框
$this->Form->select('tags._ids', /* ... */);
看
了解一些信息
您还应该从表中检索标记列表,而不是在视图中手动定义它们
控制器
// ...
$tags = $this->Users->Tags->find('list');
$this->set(compact('user', 'tags'));
查看
echo $this->Form->select('tags._ids', $tags, [
'multiple' => 'checkbox'
]);
另请参见以了解此类关联,您应该使用字段名中的\u id
键,这样表单帮助器可以神奇地拾取值并选中您的框
$this->Form->select('tags._ids', /* ... */);
看
了解一些信息
您还应该从表中检索标记列表,而不是在视图中手动定义它们
控制器
// ...
$tags = $this->Users->Tags->find('list');
$this->set(compact('user', 'tags'));
查看
echo $this->Form->select('tags._ids', $tags, [
'multiple' => 'checkbox'
]);
另请参见以了解此类关联,您应该使用字段名中的\u id
键,这样表单帮助器可以神奇地拾取值并选中您的框
$this->Form->select('tags._ids', /* ... */);
看
了解一些信息
您还应该从表中检索标记列表,而不是在视图中手动定义它们
控制器
// ...
$tags = $this->Users->Tags->find('list');
$this->set(compact('user', 'tags'));
查看
echo $this->Form->select('tags._ids', $tags, [
'multiple' => 'checkbox'
]);
另请参见以了解此类关联,您应该使用字段名中的\u id
键,这样表单帮助器可以神奇地拾取值并选中您的框
$this->Form->select('tags._ids', /* ... */);
看
了解一些信息
您还应该从表中检索标记列表,而不是在视图中手动定义它们
控制器
// ...
$tags = $this->Users->Tags->find('list');
$this->set(compact('user', 'tags'));
查看
echo $this->Form->select('tags._ids', $tags, [
'multiple' => 'checkbox'
]);
另请参见