【问题标题】:Laravel trying to get topics that have no postsLaravel 试图获取没有帖子的主题
【发布时间】:2019-11-11 14:11:21
【问题描述】:

我有两个表格,主题和帖子。我只想获取没有帖子的主题。

我尝试使用 order by,但是我有一些没有帖子的主题,还有一些有帖子的主题,所以这是错误的。

Topic::where('locale', $locale)
    ->withCount('posts')
    ->orderBy('posts_count', 'ASC')
    ->paginate(15);

【问题讨论】:

  • 你想得到什么?所有没有帖子的主题?

标签: php laravel


【解决方案1】:

如果您尝试获取所有没有帖子的主题,请尝试以下操作:

Topic::doesntHave('posts')->paginate(15);

如果您想过滤特定(最大)数量的帖子,请执行以下操作:

Topic::has('posts', '<=', $count)->paginate(15);

【讨论】:

    【解决方案2】:

    如果您想在没有任何帖子的情况下获取主题,如果您的模型设置正确,您可以使用doesntHave

    $topicsWithoutPosts= Topic::doesntHave('posts')->where('locale',$locale)->paginate(15);
    

    【讨论】:

      猜你喜欢
      • 2018-08-24
      • 1970-01-01
      • 1970-01-01
      • 2011-03-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多