ここでは2-3時間かかりました。laravel 5.1関連性を取得する各カテゴリの5つのニュースを多対多の関係で表示
私は多くの関係に多くを持っている:
class Category extends Model
{
public function news()
{
return $this->belongsToMany('App\News');
}
}
class News extends Model
{
public function categories()
{
return $this->belongsToMany('App\Category');
}
}
私は、関連するカテゴリの最新5つのニュースを取得しようとしています:上記のクエリは私のために働いていない
$front_categories = Category::with(array(
'news'=>function($query){
$query->where('publish','1')->orderBy('created_at', 'desc')->take(5);}))
->where('in_front', 1)->get();
それが与えます各カテゴリについて5つの結果の代わりに5つの結果の合計。
が $ front_categoriesある=カテゴリー::どこ( 'in_frontを'、1) - > orderBy(' position '、' asc ') - > get(); 私のカテゴリのモデルに public function newsTop5() { return $ this-> news() - > orderBy( 'created_at'、 'desc') - > take(5); } と私のブレード @foreach($ front_category-> newsTop5 $ news) – sanu