我有两个表:
文章
id | title | category_id | created_at | updated_at|
和类别
id | name | descriptions | created_at | updated_at|
关系:类别hasMany-> articles
和文章belongsTo -> category
。
如何简单地使查询类似于:
public functions getArticles ($category) {
$articles = Articles::where('category', '=', $category);
}
在文档中存在Id为的示例(http://laravel.com/docs/4.2/eloquent#one-很多),但我想选择文章,知道名称类别。
查询中如何用关系指定条件?
如果有这样的方法,请帮帮我。谢谢;)
您可以使用whereHas
方法。类似:
$articles = Articles::whereHas('category', function($query)use($category){
$query->where('name', $category->name);
});
我想这应该行得通。或者,您可以创建一个scope
并加入categories
表,然后通过它进行检查。