首页 > 解决方案 > 拉拉维尔 | 半组装生成器中的 OrderBy 相关表的列

问题描述

我有半成品 Builder 实例:

$builder = PageLang::with(['page', 'version'])
           ->where('page_id', $_GET['id']) 
           ->groupBy('version_id').

我需要按页列(URL)对结果进行排序。诀窍是我需要处理已经组装了一半的 Builder。我不能早点做。那么我该如何做这样的事情:

$builder->related('page', function($q) { $q->orderBy... })

标签: phplaravellaravel-5

解决方案


你有没有试过这个:

$builder = PageLang::join('pages', 'pages.id', '=', 'page_langs.page_id') // you could write your joining columns here
       ->with(['page', 'version'])
       ->where('page_id', $_GET['id']) 
       ->groupBy('version_id')
       ->orderBy('pages.column, 'DESC')->get();

推荐阅读