【问题标题】:OrderBy its not wokring on laravelOrderBy 不适用于 laravel
【发布时间】:2020-11-04 22:35:27
【问题描述】:
我在做“orderBy”名称产品时遇到问题。这是我的代码
$resume = Transaction::with(['product' => function ($q) {
$q->orderBy('name_product','ASC');
}])
->where('status', 'keluar')
->where('status', 'masuk')
->get();
但我的代码不起作用...这是输出
result
【问题讨论】:
标签:
php
laravel
pdf
eloquent
laravel-7
【解决方案1】:
改为使用集合进行排序。它允许基于嵌套属性进行排序。
$resume = Transaction::with('product')
->where('status', 'keluar')
->where('status', 'masuk')
->get()
->sortBy('product.name_product')
->values();
【解决方案2】:
因为您将条件应用于product,而不是transaction。
我有另一个建议使用whereHas。
Transaction::whereHas('product', function($query) {
$query->->orderBy('name_product','ASC');
})->where('status', 'keluar')
->where('status', 'masuk')
->get();