3 回答
TA贡献1802条经验 获得超5个赞
您可以通过使用 'hasOne' 和 orderByDesc 来创建一个名为 'lastPayment' 的新关系来获取最后一次付款....
class Tenant extends Model
{
public function lastPayment()
{
return $this->hasOne(Payment::class,'tenant_id')->orderByDesc('payments.id');
}
}
public function index()
{
$tenants= Tenant ::with('lastPayment')->get();
return view('payments.index')->with('tenants',$tenants);
}
TA贡献1831条经验 获得超9个赞
以下给出了我需要的输出。有没有更形象的方式来表达这个功能。
{
$payments = Payment::whereRaw('id IN (select MAX(id) FROM payments GROUP BY tenant_id)')->get();
return view('payments.index')->with('payments',$payments);}
TA贡献1798条经验 获得超7个赞
latest()是一个函数,它将按照您提供的列按降序排序。
public function index()
{
$payments = Payment::groupBy('tenant_id')->get()->latest('id');
return view('payments.index')->with('payments',$payments);
}
- 3 回答
- 0 关注
- 129 浏览
添加回答
举报