orm - wherepivot - Laravel Eloquent Filter By Column of Relationship
wherepivot laravel (1)
Usando el ORM elocuente, tengo mis modelos configurados así: Post
belongsToMany
Category
Post.php
public function categories()
{
return $this->belongsToMany(''Category'', ''posts_categories'');
}
Quiero filtrar los mensajes por una columna de la relación de categorías.
Así que quiero hacer algo como:
$posts->where(''categories.slug'', ''='', Input::get(''category_slug''));
Aunque esto no funciona.
También intenté:
$with[''categories''] = function($query){
$query->where(''slug'', ''='', Input::get(''category_slug''));
};
$posts::with($with)->get();
Pero creo que eso es para filtrar las categorías y no para filtrar POR la categoría.
¿Alguien me puede mostrar el camino?
No puedo acceder a mi caja de Vagrant en este momento, pero creo que esto debería funcionar:
$posts = Post::whereHas(''categories'', function($q)
{
$q->where(''slug'', ''='', Input::get(''category_slug''));
})->get();