嗨,我想保存许多多态性
就我而言,我想保存标签以供书评
它保存标签,但它保存的不仅仅是标签
85 App\Models\Book_Review 132 1 2018-11-25 14:42:20 2018-11-25 14:42:20
86 App\Models\Book_Review 132 85
87 App\Models\Book_Review 132 2 2018-11-25 14:42:22 2018-11-25 14:42:22
88 App\Models\Book_Review 132 87
89 App\Models\Book_Review 132 3 2018-11-25 14:42:23 2018-11-25 14:42:23
90 App\Models\Book_Review 132 89
保存标签,并且在每个标签之间保存一个带有前一个可标签对象的标签ID的可标签表对象
这是我的标签模型关系
public function books_review()
{
return $this->morphedByMany(Book_Review::class, 'taggable');
}
这是我的书评模型关系
public function tags()
{
return $this->morphToMany(Tag::class, 'taggable');
}
这就是我在控制器中保存标签的部分
foreach ($request->tagid as $item) {
$book_review_tag = new Taggable();
$taggable_id = strval($book_review->id);
$book_review_tag->taggable_type = $this->Model;
$book_review_tag->taggable_id = $taggable_id;
$book_review_tag->tag_id = $item;
$book_review->tags()->saveMany([$book_review_tag]);
}
我使用调试器并向我展示,当它返回到for循环的第一个时,它将获得id作为参数 但我不知道如何解决