php - laravel 选择与每个帖子相关的最后一条评论

标签 php mysql laravel eloquent

我在 laravel 中有三个表,如下所示:

用户、帖子和评论

我正在尝试提出一个查询来获取所有用户的帖子,以及每个帖子的最后评论日期。

我采用的但效果不佳的方法是:

$posts = User::find($userId)->posts()->with('latestComment')->get();

在我的 Post 模型中我有:

public function latestComment()
{
    return $this->hasOne(Comment::class)->latest();
}

在我的发现中,我还没有看到从 lastComment 加载中获取日期的方法。

欢迎指点,

谢谢

最佳答案

刚刚发现需要像这样在select方法中添加外键:

return $this->hasOne(Comment::class)->latest()->select('field','foreign_key');

关于php - laravel 选择与每个帖子相关的最后一条评论,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42430820/

相关文章:

Laravel where日期和地点

php - 如何在 PDO 中使用 SELECT IFNULL?

php - 使用多个过滤器和分页来简化 Eloquent Laravel?

php - SQL 可以告诉我更新了多少行吗?

javascript - Laravel Spark : Creating a new Settings Tab and Vue Component

php - 如何在不同的表列中获取另一个表数据?

php - 获取数据以便在表单上进行编辑

php - 碳从时间戳创建

mysql - VIsual Studio Express 2012的数据库资源管理器中找不到Mysql数据库

c# - 通过MySql.Data.MySqlClient方法连接OpenShift云端的MySQL服务器