当前位置: 首页 > 知识库问答 >
问题:

拉雷维尔为一个集合而收集

百里诚
2023-03-14

我有两个模型,一个用户模型和一个帖子模型。我正在尝试获取在某个日期范围内发布的用户集合。我只是不知道如何将这两个模型连接在一起。两者之间存在一对多的关系。

用户模型:

public function posts()
{
    return $this->hasMany('App\Models\Post', 'user_id');
}

所以,我想要一个用户集合,其中帖子在日期1之间

$users = Users::all();

$users = $users->filter(function() {
   foreach ($users as $user)
   {
      if ($user->posts->whereBetween(date 1, date 2))
      { 
         return true; //something like that
      }
   }
});

共有1个答案

刘英彦
2023-03-14

最好按照你想要的方式快速加载你的关系模型,然后处理结果。不需要使用if检查。

$users = Users::with(['posts' => function($query) {

    $query->whereBetween(date 1, date 2);

}])->get();

更多信息:急切加载

 类似资料:
  • 要从一开始就阻止您,没有权限问题/存储是递归的,整个项目文件夹由apache:apache存储 我甚至将日志文件重命名为-old和apache创建了一个新的。。。如果它没有实际的写权限,就不允许它创建它。 在CentOS 6.6版(最终版)下运行 从git部署了这个项目,这个家园为我的同事工作。 完全错误: [2015年5月18日星期一10:17:58][error][client 86.124.

  • 我在本地运行的Laravel应用程序中有一个登录页面,但在生产服务器上,我收到以下错误消息(Laravel.log) 在应用/存储/视图/8d74d14da5e7fbd7b4984adefddd5a1b中生成的代码是: 有什么想法吗? 谢谢你

  • 我正试图用雄辩加载一个遥远的关系,但遇到了问题。涉及5个表,它们是用户、corporate_users、公司和两个哨兵表(组和users_groups)。 表的设置如下所示: 用户有一个合作用户(一对一) 公司用户归属到公司(多对一) 用户通过users_groups透视表与组建立多对多关系。 所有这些关系都是单独工作的。最初,我可以通过调用

  • 我是新来的laravel和雄辩,我不确定这是否可能。但是我有2张桌子,有一对多的关系。一个是“位置”,一个是“用户”。一个位置可以有许多用户。 所以,如果我想获得所有用户的所有位置,我会这样做: 但是我也想知道每个位置有多少用户,我试着这样做 但那没有奏效。

  • 所以我正在尝试为我的网站实现一个支付解决方案,经过相当多的研究,我仍然缺乏一个完整的解决方案。我正在运行Laravel 5.0,需要一般购物车付款功能。我想我会发布这篇文章,试图创建一个参考,以帮助其他可能有这个问题的人。我已经把测试事务放到了Paypal的沙箱中,这似乎是砖墙的所在,但是一个完整的概述会很有帮助。我将列出我需要克服的问题,以便解决一些问题。 完成支付解决方案实施需要解决的问题 >

  • 我在中编写查询时遇到问题。 我的疑问是 现在我想把这个查询转换成laravel eloquent。