【问题标题】:Laravel 4 Eloquent group by relationship dateLaravel 4 Eloquent 组按关系日期
【发布时间】:2015-03-02 20:07:28
【问题描述】:

我在 Laravel 4.2 上使用 Eloquent ORM 有一个主题和链接表。他们有这样的关系;

主题模型:

class Topic extends \Eloquent {
    public function links()
    {
        return $this->belongsToMany('Link');
    }
}

链接模型:

class Link extends \Eloquent {
    public function topics()
    {
        return $this->belongsToMany('Topic');
    }
}

我想像这样对链接进行分组;

05.02.2015

第一个主题

  1. 示例链接
  2. 示例链接

第二个话题

  1. 示例链接
  2. 示例链接

04.02.2015

第一个主题

  1. 示例链接
  2. 示例链接

第二个话题

  1. 示例链接
  2. 示例链接

数据库方案

主题

  • 身份证
  • 姓名
  • created_at
  • updated_at

链接

  • 身份证
  • 标题
  • created_at
  • updated_at

链接主题

  • 身份证
  • link_id
  • topic_id

我该怎么做?我没有解决这个问题。

谢谢。

【问题讨论】:

  • 您的数据库表中有哪些字段?你能给我们一些示例行吗?
  • 添加了数据库方案。

标签: php mysql laravel laravel-4 eloquent


【解决方案1】:

我认为你应该使用这样的东西......

Topic::with(['links' => function($query){
    $query->orderBy('created_at', 'DESC');
}])->all();

【讨论】:

  • 我想像给样例一样按日期分组。
  • 从这个角度来看,你不能直接按日期分组,你需要使用array_where。
猜你喜欢
  • 1970-01-01
  • 2016-07-27
  • 1970-01-01
  • 2015-01-01
  • 2017-01-14
  • 1970-01-01
  • 1970-01-01
  • 2013-12-14
  • 2016-10-15
相关资源
最近更新 更多