Как запросить модель и связанную с ней модель в laravel - PullRequest
0 голосов
/ 27 февраля 2019

Я строю проект Laravel 5.5, в котором у меня есть 2 связанных модели, Пользователь и Сервис, с такими отношениями: Внутри User.php

public function service()
{
  return $this->hasMany('App\Service');
}

и внутри Service.php

public function user()
{
  return $this->belongsTo('App\User');
}

Мне нужно запросить модель сервиса для столбца сервиса, где запросом является либо имя_службы, либо имя пользователя.По сути, запрос будет искать элемент в модели сервиса и связанной модели пользователя.Я написал запрос ниже, но он возвращает пустую коллекцию:

$items = Service::where('service_name', 'LIKE', "%".$query."%")
                 ->whereHas('user', function($q) use ($query){
                  $q->where('name', 'LIKE', "%".$query."%");))->get();

Что я делаю не так?

Примечание: мой поиск в документации по google, stackoverflow и laravel не дал точночто мне нужно, следовательно, мой вопрос, пожалуйста.

1 Ответ

0 голосов
/ 27 февраля 2019

Измените «whereHas ()» на «OrWhereHas ()».

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