Laravel ::将文章id重用到新表中

时间:2015-07-20 15:38:12

标签: php mysql laravel

我需要能够制作一个"喜欢"系统。我有三张桌子。 UsersArticlesLikes

Articles表中,我有id,title,body。在Likes我有id,user_id和article_id。

因此当一个人按照文章的内容进行操作时,我会用他们的用户ID和article_id填充表格。

但是我遇到了添加id的问题。这是我所知道的最基本的内容,我看过laravel视频,但它对我来说还是新手。

这是我在文章控制器中的内容。

$article = new Article();
    $article->body = 'new article body';
    $article->title = 'new article Title';
    $article->type = 'fashion';

    $article->save();

    $articles = Article::where('type', 'fashion')->get();
    //$articles = Article::all();
    return view('articles.index', compact('articles'));


 public function store()
{
    $request = Request::all();


    $likes = new like();
    $likes ->article_id = Article::find($id);
    $likes->user_id =   Auth::user()->id;
    $name = Auth::user()->name;
    $likes->save();

    $followers = new Follower();
    $followers->follower_id = Auth::user()->id;
    $followers->user_id =  $request['user_id'];
    $name = Auth::user()->name;
    $followers->save();

    return redirect('article');



}

1 个答案:

答案 0 :(得分:0)

您正在尝试使用不存在的变量。在此行使用变量$id

$likes ->article_id = Article::find($id);

未在任何地方初始化。也许你期望它在请求中?因此,在这种情况下,$request->id就是这种情况。

此外,如果您的模型被调用Like,则应将此行$likes = new like();上的案例修改为$likes = new Like();