vistas que plantillas motor index gratis for descargar crear content ciclo laravel laravel-4 eloquent

que - Laravel. Use scope() en modelos con relación



laravel foreach index (1)

Tengo dos modelos relacionados: Category y Post .

El modelo de Post tiene un alcance published (método scopePublished() ).

Cuando intento obtener todas las categorías con ese alcance:

$categories = Category::with(''posts'')->published()->get();

Me sale un error:

Llamada al método indefinido published()

Categoría:

class Category extends /Eloquent { public function posts() { return $this->HasMany(''Post''); } }

Enviar:

class Post extends /Eloquent { public function category() { return $this->belongsTo(''Category''); } public function scopePublished($query) { return $query->where(''published'', 1); } }


Puedes hacerlo en línea:

$categories = Category::with([''posts'' => function ($q) { $q->published(); }])->get();

También puedes definir una relación:

public function postsPublished() { return $this->hasMany(''Post'')->published(); // or this way: // return $this->posts()->published(); }

y entonces:

//all posts $category->posts; // published only $category->postsPublished; // eager loading $categories->with(''postsPublished'')->get();