У меня есть много-много отношений между таблицей книг и таблицей авторов. Сводная таблица (author_book) содержит author_id и book_id.Laravel поиск во многих отношениях
Я хочу, чтобы мои пользователи имели возможность искать через базу данных, используя простую форму поиска. Всякий раз, когда пользователь вводит ключевое слово, я хочу искать поля в обеих таблицах.
Что мне нужно что-то вроде этого ...
return View::make('result')->with('books', Book::with('authors') ->where('title', 'LIKE', '%'.$keyword.'%') ->orWhere('**authors->table->name**', 'LIKE', '%'.$keyword.'%')->get());
мне нужен способ также поиск таблицы авторов и проверить это ключевое слово maches имя автора.
Соотношение установлено как в моей авторе, так и в книжной модели.
Любая помощь будет оценена
Посмотрите на мой ответ на http://stackoverflow.com/questions/18634398/eloquent-calling-where-on-a-relation/18634716# 18634716 - это также о добавлении того, где на отношение. –
Как-то это не работает для меня, потому что мне нужно использовать переменную $ ключевого слова внутри функции. – 303K
@ 303K вы можете передавать параметры, такие как ваше ключевое слово $, в закрытие с помощью конструкции '' use' language '(http://php.net/manual/en/functions.anonymous.php#example-160). –