我在Books表和Authors表之间有多对多的关系。数据透视表(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());
我需要一种方法来同时搜索authors表和检查是关键字maches作者姓名。
该关系在我的作者和书籍模型中均已设置。
任何帮助将不胜感激
看一看我的答案在http://stackoverflow.com/questions/18634398/eloquent-calling-where-on-a-relation/18634716# 18634716 - 它也是关于在关系中添加一个地方。 –
不知何故,这对我不起作用,因为我需要在函数中使用$关键字变量。 – 303K
@ 303K,您可以使用['use'语言构造]将参数(例如'$ keyword')传递给闭包(http://php.net/manual/en/functions.anonymous.php#example-160 )。 –