مشكلة في Filtering the posts by category

منذ سنة بواسطة mohip

مساء الخير عليكم جميعاً، أنا جديد جداً على لارافيل، وأحاول أن أنشيء فلتر عن طريق category بحيث أنه، إن قام الزائر بالنقر على أحد ال categories ينتقل إلى قائمة بالمقالات التي تنتمي إلى هذه الcategory فقط سأضع لكم محاولتي لترشدوني إلى المشكلة:

in the category controller:

public function index()
    {
        $categories = category::with('posts')->get();
        $posts = post::all();
        return view('categories.index')->with('categories',$categories)->with('posts',$posts);
    }
    public function category($id)
    {
        $post= post::find($id);
        return view('categories.post')->with('post',$post);
    } 

in the route:

Route::resource('categories','categorycontroller', ['except'=>['create']]);
route::get('category/{category}', ['uses'=>'categorycontroller@category', 'as'=>'category']);  

in the category index:

 @foreach($categories as $category)
<a href="{{route('category', $category->id)}}">{{$category->name}}</a>
{{$category->posts->count()}}<br>
@endforeach
ab
منذ سنة بواسطة abdelkrim ( نقاط الخبرة 4,000 )

مرحبا بك اخي ادا فهمت سؤالك انك تريد عرض posts التابعين ل category لكن من خلال الكود الدي وضعت قمت فقط بعرض post باعستعمال id الخاص ب category وهدا خطأ. اعتقد ان الصواب هو ان تقوم بعرض posts بهدا الشكل

public function category($id) {
    $posts= post::where('category_id',$id)->get();
    return view('categories.post')->with('posts',$posts);
}

فقط ملاحضة اتمنى ان تحيط الاكواد ب ``` لكي يتم تنسيقها لانه من الصعب علينا فهمها بهدا الشكل.

المرجواالاشتراكاوتسجيل الدخولللمجتمع لكي تتمكن من المشاركة