1
我試圖保存更多的數據來連接CakePHP 3中的表。 關聯如下所示:articles => model_tags < =>標記(表)。將數據保存到CakePHP 3的連接表
在TagsTable和文章表我有:文章和標籤之間
$this->belongsToMany('Tags', [
'joinTable' => 'model_tags',
'foreignKey' => 'foreign_id'
]);
協會在model_tags表正確保存。但是我想將其他數據保存到model_tags表中的'model_name'字段中,因爲將來我希望將model_tags表用於其他模型。因此,在這種情況下,通過文章保存在model_tags中的所有標籤關聯都應在字段「model_name」字符串「articles」中有。
重點是 - 我應該在哪裏放置我的代碼?自從幾個小時以來,我正在與這個問題鬥爭。我認爲之前保存應該是最好的選擇。
我已經想通了,我可以把數據保存在單獨的記錄:
$tag = $this->Tags->findByTitle('heregoestagtitle')->first();
$tag->_joinData = $this->ModelTags->newEntity();
$tag->_joinData->model_name = 'articles';
$this->Tags->link($entity, [$tag]);
但是,當然在我的情況下,它不會工作,因爲我要拯救每篇文章一些標籤,所以會有model_tags表中也很少有關聯記錄。
如何以正確的方式將數據放入連接表中?