我有两个型号:ModelA,ModelB。他们的展位有id,name,...,done(bool)字段。
ModelA与ModelB没有任何关系!
我创建了一个Form,它在ModelA / add.ctp
中有booth模型字段echo $this->Form->create('ModelA', [
...
]);
echo $this->Form->input('ModelA.name');
...
echo $this->Form->input('ModelA.done', [
'default' => true
]);
echo $this->Form->input('ModelB.name');
...
echo $this->Form->input('ModelB.done', [
'default' => true
]);
我的问题是,Cake不会为ModelB.done创建一个复选框,而是创建一个简单的输入字段。 它也不验证ModelB。 (因为它不知道这些字段与ModelB有关。)
我可以通过在ModelA控制器中加载ModelB来执行手动验证,并执行以下操作:$this->ModelB->validate(...)
我的问题是:是否可以设置此表单有两个不相关的模型?
答案 0 :(得分:0)
我认为没有办法设置两个不相关的模型并在不调用验证函数的情况下验证它们。
但是,您的复选框问题可以很好地解决。
使用此:
echo $this->Form->input('ModelB.done', [
'type' => 'checkbox',
'default' => true
]);