Запрос о последних записях из нескольких записей в Laravel отношении - PullRequest
0 голосов
/ 29 апреля 2020

У меня есть две таблицы users и users_logs.

Таблица users_logs связана с users с помощью user_id.

Таблица users_logs может иметь несколько записей против разных пользователей, например 100 записей могут иметь против одного user_id.

Я хочу получить всех пользователей из таблицы users, а затем проверить, последняя ли (самая последняя запись) в users_logs таблица имеет created_at меньше определенной даты, если да, то извлеките записи, которые еще не были.

Я также создал отношение hasMany в таблице users.

public function users_logs_details(){
    return $this->hasMany('App\UsersLog', 'user_id', 'id');
}

Код, который я пробовал:

$users = User::with(['users_logs_details'])
            ->whereHas('users_logs_details', function($query) use ($certainDate) {
                return $query->where('created_at', '<', $certainDate);
            })->get();

Но я не получаю никакого результата, потому что этот запрос проверяет все записи в таблице users_logs, но я хочу проверить только последнюю запись.

Пожалуйста, помогите, я был бы очень благодарен.

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