Laravel Eloquent Последний статус из таблицы журнала - PullRequest
0 голосов
/ 22 ноября 2018

У меня есть таблица order_status_transaction, которая является журнальной таблицей для записи статуса транзакций

enter image description here

Я пытаюсь написать красноречивый конструкторнапример, получить все транзакции со статусом CURRENT 5 .

Это самое близкое, что у меня есть

$transactions = $this->whereHas('statuses', function ($query) use ($statusId) {
    $query->where('order_status_transaction.order_status_id', $statusId)->where();
});

Но он не проверяет,самый последний.Я не хочу получать коллекцию и фильтровать коллекцию, это может происходить исключительно в конструкторе?

Ответы [ 2 ]

0 голосов
/ 22 ноября 2018

В построителе запросов есть метод с именем latest(), поэтому вы должны написать что-то вроде этого:

OrderStatusTransaction::where('order_status_id', $statusId)
    ->latest()
    ->get();

Это позволит получить все записи с указанным идентификатором состояния, начиная с самых последних и заканчивая самыми старыми.

Вы можете прочитать об этом здесь:

https://laravel.com/docs/5.7/queries#ordering-grouping-limit-and-offset

0 голосов
/ 22 ноября 2018

Это должно сделать

$transactions = OrderStatusTransaction::where('order_status_id', $statusId)->latest()->get();

Предполагая OrderStatusTransaction в качестве названия вашей модели.Как и в комментариях, последние сортировки по последним.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...