如何在laravel上同步标签

时间:2017-03-16 17:14:50

标签: laravel tags

insertData控制器

    public function insertArticle(Request $request)
            {
                $article = new Article();
                $article->title = $request['title'];
                $article->content = $request['content'];

                //code to sync tags for this article

                $article->save()
                return redirect()->back();
           }

标记位于另一个名为tags的表格中,其中包含idname。我使用包含tagsarticles条目的数据透视表article_tagarticle_id表连接到tag_id表,并且我已经设置了关系以及数据透视表中的外键。我想要做的是在需要更新时tags同步article

1 个答案:

答案 0 :(得分:0)

使用sync()方法:

public function insertArticle(Request $request)
{
    $article = new Article();
    $article->title = $request['title'];
    $article->content = $request['content'];
    $article->save();

    $article->tags()->sync($tagsIdsArray);

    return redirect()->back();
}
  

sync方法接受要放在中间表上的ID数组。将从中间表中删除不在给定数组中的任何ID。因此,在此操作完成后,只有给定数组中的ID将存在于中间表