私は3モデルPost, Tag and Category
を持っています。 Post model
とTag model
はピボットテーブルと多対多の関係にあり、Post model
とCategory model
は1対多の関係にあります。私は、カテゴリやタグの上にあるポストおよびshowカテゴリ名を数えるしようとしている特定のカテゴリとタグを含むポストを投稿するlaravel
tag name = php,
category name = tutorial, project, testing
no. of post having above attribute = 3 [ all post have different category, same tag]
:
たとえばのは、私はタグやカテゴリーを以下していると仮定しましょうビュー内のphp
archive-php
という名前です。
これは私がこれまでにやっていることです:
コントローラでの私の方法
public function countTag()
{
$posts = Post::whereHas('tag', function($r) {
$r->where('name','=', "php");
})->get();
return view('archive-php')
->withPosts($posts)
}
ビューで私のコード:
@foreach ($posts as $post)
<li><a href="#">{{ucfirst($post->category->name)}}</a>
{{$post->count()}}
</li>
@endforeach
上記のコードはsucessfully(関連カテゴリ名を示してい3カテゴリ名)dd($posts);
3つの配列をダンプしますが、db内のすべてのポストをカウントします。私がここで紛失しているパズルのどの部分か、それは不可能ですか?
タグ[php]を持つ[カテゴリ]の[投稿]の数を数えますか? –
はい、それは私がやろうとしていることです。 –