我有两个数据库表称为交付,并deliverable_version。Laravel 5.4雄辩关系排序
交割的hasMany Deliverable_Version。
交付有id列,该模型有一个函数来获取最新版本:
public function getRecentVersion()
{
$deliverable_version_max = $this->versions()->max('version');
$deliverable_version = DeliverableVersion::where([
'version'=>$deliverable_version_max,
'deliverable_ID'=>$this->id,
])->first();
return $deliverable_version;
}
Deliverable_version表有ID,deliverable_ID,标题,消息,截止日期,版本, created_at,updated_at。
如何将执行的操作,我可以:
获取所有交付,并与交付相关的最新版本。
排序交付其所由deliverable_version表(的updated_at)
的列分页的结果?
这是我在它的企图,这是不工作,因为它选择所有的版本时,我加入了表,而不仅仅是最新版本:
$deliverables = Accounts::find($owner_account_ID)->deliverables();
$deliverables = $deliverables->join('deliverable_version', 'deliverable.id', '=', 'deliverable_version.deliverable_ID');
$deliverables = $deliverables->search($search);
$deliverables = $deliverables->orderBy('deliverable_version.updated_at', 'desc');
$deliverables = $deliverables->paginate(4);
任何帮助表示赞赏。谢谢。
添加你的模型文件,以获得更好的答案。 – Saman
好的,模型文件已被添加。 –