【发布时间】:2021-11-17 16:59:38
【问题描述】:
我是编程世界的新手,我使用 laravel。我有Post 模型,每个用户都可以有更多的帖子。对于所有帖子,我都有hasMany 关系,但这与帖子有关,我需要逆逻辑。
我不知道如何才能只获取最后一篇帖子超过 30 天的用户?我需要它们来发送电子邮件通知。
有人可以给我一些意见吗?
【问题讨论】:
标签: laravel database eloquent eloquent-relationship
我是编程世界的新手,我使用 laravel。我有Post 模型,每个用户都可以有更多的帖子。对于所有帖子,我都有hasMany 关系,但这与帖子有关,我需要逆逻辑。
我不知道如何才能只获取最后一篇帖子超过 30 天的用户?我需要它们来发送电子邮件通知。
有人可以给我一些意见吗?
【问题讨论】:
标签: laravel database eloquent eloquent-relationship
https://laravel.com/docs/8.x/eloquent-relationships#querying-relationship-existence
所以应该是这样的:
User::whereHas('posts', function ($query) {
return $query->where('created_at', '<=', now()->subDays(30);
})->get()
【讨论】:
where 更改为whereDate 以比较日期并忽略时间