1
我想将数据发布到两个表(文章和内容)。将数据保存到CakePHP中的两个不同表3
内容属于关联文章(一多条内容),这是写在我的ContentsTable.php
public function initialize(array $config)
{
parent::initialize($config);
$this->table('contents');
$this->displayField('id');
$this->primaryKey('id');
$this->addBehavior('Timestamp');
$this->belongsTo('Articles', [
'foreignKey' => 'article_id',
'joinType' => 'INNER'
]);
}
现在我要发布表中的所有内容,并创建一个文章。
ContentsController.php
public function add()
{
$content = $this->Contents->newEntity();
$id = $this->Auth->user('id');
if ($this->request->is('post')) {
$contents = $this->Contents->newEntities($this->request->data());
foreach ($contents as $content) {
$content->article_id = $id;
$this->Contents->save($content);
}
}
$this->set(compact('content'));
$this->set('_serialize', ['content']);
}
我尝试用associated
做到这一点,但没有奏效。
$content = $this->Contents->newEntity($this->request->data, [
'associated' => ['Articles']
]);
“_doesn't work_”不是一个合适的问题描述!即使问题对于了解CakePHP内部的人来说可能是显而易见的,请始终尽可能具体说明_exactly_发生了什么,以及您期望发生什么。显示您正在使用的数据(发布数据),重现问题所需的代码(所有实体/保存代码,不仅仅是newEntity()调用),您的调试尝试(而不仅仅是“解决方法”尝试)和可能的错误(验证错误,异常等)。收集此类信息时,问题通常会自行解决。 – ndm