我在同一个视图中有两个表单,每个表单来自不同的实体/模型。
我想用一个请求提交它们,如果可能的话,数据应该转到相应的控制器+动作。
如何实现这一目标?
修改
我想在实体的A形式中编辑属于实体A的实体B.
A有很多B。
答案 0 :(得分:1)
正如@arilia建议的那样,我通过了手册。
首先,我将表格添加到BTable
$this->belongsTo('A', [
'foreignKey' => 'auto_id',
'joinType' => 'INNER',
]);
这是ATable
$this->hasMany('B');
在此之后的AController中
if ($this->request->is('post')) {
我为“添加”操作添加了此内容,
$a= $this->A->patchEntity($a, $this->request->data, [
'associated' => [
'B'
]
]);
在编辑操作中,我执行了与上面相同的步骤,并在功能签名后加上此步骤:
$a= $this->A->get($id, [
'contain' => ['B']
]);
它解决了这个问题,因为现在我可以用一种形式编辑关联的实体。
感谢@arilia