Как показать все данные из таблицы users, только если их детали не существуют в таблице user_details в laravel?

#laravel

#laravel

Вопрос:

У меня есть две таблицы: одна users и другая user_details.

Таблица Users id,name,phone,email

таблица user_details id, user_id, address, city

Я сохраняю id пользователя в user_details виде user_id

Я хочу показывать все данные пользователей только тогда, когда пользователи не обновили свою user_details таблицу.

Как я могу этого добиться?

Ответ №1:

has() — используется для доступа к пользователям, имеющим пользовательские данные

doesntHave() — используется для получения пользователя, не содержит сведений о пользователе

В вашей пользовательской модели создайте отношение

 public function details(){
    return $this->hasOne('AppUserDetail');
}
  

При выборке пользователей в контроллере

 User::has('details')->with('details')->get();