Laravel懒人渴望加载订购

时间:2014-01-28 16:08:51

标签: laravel laravel-4 eloquent

我想知道是否可能在懒惰的急切加载时订购任何子模型? 目前我有

Item :: findOrFail($ id) - > load('sections','level','category','tags','relatedItems');

我希望标签按名称排序,所以我想知道是否像

Item :: findOrFail($ id) - > load('sections','level','category','tags','relatedItems') - > orderBy('tag.name');

是可能的。

我在这里使用'with'看到其他示例,但我似乎无法使用单一基本模型加载。

由于

1 个答案:

答案 0 :(得分:3)

使用与急切加载约束相同的语法

$item = Item::findOrFail($id);
$item->load(array('tags' => function($query) {
    $query->orderBy('tag.name');
}));

在您的示例中,您还可以使用with()而不是load()。当你想要加载到现有模型中时使用后者,就像在我的例子中一样,尽管我认为这是分裂头发!