У меня 2 таблицы (сообщения, исправления) и между ними есть связь
Почта имеет много исправления (отношения "один ко многим")
Таблица Редакции имеет столбец с именем положение дел (одобренный или отклоненный)
Теперь я хочу выбрать все сообщения, если его последний пересмотр - одобренный
Я перепробовал много способов, но смог получить сообщения со статусом одобренный
Обновлять
Я нашел хорошее решение в этом ответе
да, у меня есть отметки времени
См. stackoverflow.com/a/53120558/4848587.
Спасибо @JonasStaudenmeir, он отлично работает
Отвечает ли это на ваш вопрос? Laravel - где проверяет последнюю запись об отношениях, не проверяя других






Post::with([ 'revisions' => function($query) {
$query->orderBy('created_at', 'desc')->where('status', 'approved')->limit(1);
}])->get()->filter(function($item) {
return $item->revisions->count() > 0;
});
В сборник будут входить только те сообщения с утвержденными исправлениями.
Большое спасибо, есть ли способ отфильтровать результаты непосредственно во время запроса, без использования метода фильтр после получения результатов
Без фильтрации нет пути, потому что посты существуют всегда, даже без ревизии.
У вас также есть временные метки в вашей таблице редакций?