【发布时间】:2016-03-17 20:15:27
【问题描述】:
可以这么说,我有 2 个 Eloquent 对象想要“合并”。
我不知道合并是否是最好的方法,请提出建议。
$customer = Customer::find($customerId);
$events = $customer->Events()->Unfinished()->orderBy('created_at', 'asc')->get();
$notes = $customer->Notes()->orderBy('created_at', 'asc')->get();
Events() 是一个 hasMany = $customer->hasMany('events');
Unfinished() 是一个作用域 = $query->where('status', '=', '0');
Notes() 是一个 hasMany = $customer->hasMany('notes');
我想将 $events 和 $notes 合并在一起,这样我就可以在 created_at 以正确的顺序遍历它们。
假设 $notes 包含 2 个帖子:
note 1
created_at: 2013-01-30 00:00:00
note 2
created_at: 2014-12-31 00:00:00
$events 包含 2 个帖子:
event 1
created_at: 2014-02-01 00:00:00
event 2
created_at: 2014-01-02 00:00:00
我希望他们像这样坠落:
event 1
created_at: 2014-02-01 00:00:00
note 1
created_at: 2013-01-30 00:00:00
event 2
created_at: 2014-01-02 00:00:00
note 2
created_at: 2014-12-31 00:00:00
我将如何最好地解决这个问题?
【问题讨论】:
-
我有这样的事情,我想从 created_at 上的 2 个表中订购结果。我尝试使用联合来组合它们。见stackoverflow.com/questions/21497865/…