gpt4 book ai didi

php - laravel 获取文章编号

转载 作者:行者123 更新时间:2023-11-29 04:40:03 25 4
gpt4 key购买 nike

我有一个文章表和一个喜欢的表。我正在尝试保存用户希望稍后在仪表板上返回给他们的所有文章的 ID。我如何获取在 articles 表上制作的 id 并将其添加到 article_id 下的 likes 表中?

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


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

return redirect('article');



}

$table->foreign('article_id')
->references('id')
->on('articles');

最佳答案

看来你的大部分代码都错了。根据您提供的信息,我至少有以下几点:

  • 文章模型,因此您可以:
    • $article = Article::find($id); 其中 $id 是文章的 ID
    • $articleLikes = $article->likes(); 其中 likes() 定义在文章模型为:

公共(public)函数 likes() {
返回 Like::where('article_id', $this->id)->get();
}

  • 喜欢模特,所以你可以做
    • $like = new Like;
    • $like->user_id = Auth::user()->id;
    • $like->article_id = $article->id;
    • $like->save();
  • 文章 Controller ,因此您可以:
    • 显示所有文章(通过返回包含所有文章的索引 View )
      • 公共(public)函数索引()
    • 创建文章(通过返回创建文章 View )
      • 公共(public)函数 create()
    • 显示文章(通过返回显示文章 View )
      • public function show($id) 其中 $id 是文章的 ID
    • 编辑文章(通过返回编辑文章 View )
      • public function edit($id) 其中$id是文章的ID
    • 存储文章(通过将文章插入数据库)
      • public function store(Request $request) 其中 $request 是 POST 数据
    • 更新文章(通过更新数据库中的文章)
      • public function update(Request $request) 其中$request是POST数据
    • 销毁一篇文章(通过删除数据库中的一篇文章)
      • public function destroy($id) 其中 $id 是文章的 ID

这是一个很好的视频教程系列,可以帮助您开始使用 Laravel 5:https://laracasts.com/series/laravel-5-fundamentals

编辑:更多信息

如何获取用户点赞过的所有文章id:

$userId = Auth::user()->id;
$likes = Like::where(user_id, $userId)->get();

$articleIds = new \Illuminate\Database\Eloquent\Collection;
foreach($likes as $like) {
$articleIds.add($like->article_id);
}

// Now $articleIds should contain all the IDs of articles
// that the currently logged in user has liked.

关于php - laravel 获取文章编号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31514183/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com