Laravel 4 如何在查询中用关系雄辩地指定条件
我有两张桌子: 文章 id |标题|类别| id |创建|更新|在| 和类别 id |名称|描述|创建|更新|在| 关系:类别Laravel 4 如何在查询中用关系雄辩地指定条件,laravel-4,eloquent,Laravel 4,Eloquent,我有两张桌子: 文章 id |标题|类别| id |创建|更新|在| 和类别 id |名称|描述|创建|更新|在| 关系:类别有许多->文章和文章属于->类别 查询的简单方式如下: public functions getArticles ($category) { $articles = Articles::where('category', '=', $category); } 在文档中存在Id为()的示例,但我希望选择文章,知道名称类别 查询中如何用关系指定条件 如果有这样的
有许多->文章
和文章属于->类别
查询的简单方式如下:
public functions getArticles ($category) {
$articles = Articles::where('category', '=', $category);
}
在文档中存在Id为()的示例,但我希望选择文章,知道名称类别
查询中如何用关系指定条件
如果有这样的方法,请帮助我。
谢谢;) 您可以使用
whereHas
方法。比如:
$articles = Articles::whereHas('category', function($query)use($category){
$query->where('name', $category->name);
});
我想那应该行得通。或者您可以创建一个
范围
并加入类别
表,然后通过它进行检查。谢谢)它工作了!我能问你一个问题吗?P.S.СПабб我想对多个列进行排序。告诉我,也许你们知道,我在哪里可以阅读或看到视图中的排序示例?例如,文章按作者或发表日期排序。就像这里,也许这是在jQuery的帮助下制作的?只需像http://somepage.org/search?order[publish_date]=desc&order[id]=asc
,然后使用Input::get('order',[])获取控制器中的所有订单
,并对其进行迭代,将新订单添加到查询中,如foreach($orders as$key=>$order){$query->orderBy($key$order);}
谢谢)如果我有一些问题,我可以写在这里吗?