У меня есть этот код в Lumen 5.6 (микрофрейм Laravel), и я хочу иметь метод orderBy для нескольких столбцов, например, http://apisurl/books?orderBy=devices,name,restrictions,category также отправлять заказы asc или desc.
В документации Люмена говорится, что мы можем использовать порядок, как этот
$books = PartnersBooks::all()->orderBy('device', 'asc')->orderBy('restrictions', 'asc')->get();
Итак, я создал функцию с foreach для заполнения массива различными значениями запросов orderBy и попытался выполнить красноречивые запросы, но безуспешно.
Кто-нибудь может мне помочь?
use Illuminate\Http\Request;
public function index(Request $request)
{
$limit = $request->input('limit');
$books = PartnersBooks::where('is_direct', '=', 1)
->with('direct')
->whereHas('direct', function ($query) {
$query->enable()
->select(['id', 'book_id', 'name', 'devices', 'flow', 'restrictions', 'countries', 'targeting']);
})
->orderBy('id', 'asc')
->paginate($limit, ['id', 'category', 'description']);
$status = !is_null($books) ? 200 : 204;
return response()->json($books, $status);
}