Php Laravel BelongsToMany在索引列表中获取类别名称

Php Laravel BelongsToMany在索引列表中获取类别名称,php,laravel,Php,Laravel,我对Laravel和php都是新手 我为我的新闻系统创建了分类 在我列出所有新闻的页面上,显示新闻链接到的类别时出现以下问题 我带来了我的文章的ID为5的类别 但我不能为其他新闻那样做 我如何在我列出所有新闻的页面上做到这一点 提前向大家表示感谢 我的控制器页面 public function index() { $data = News::all()->sortByDesc('created_at'); $parentcategory= N

我对Laravel和php都是新手

我为我的新闻系统创建了分类

在我列出所有新闻的页面上,显示新闻链接到的类别时出现以下问题

我带来了我的文章的ID为5的类别

但我不能为其他新闻那样做

我如何在我列出所有新闻的页面上做到这一点

提前向大家表示感谢

我的控制器页面

   public function index()
    {

        $data = News::all()->sortByDesc('created_at');
        $parentcategory= News::find(5)->parent_category()->limit(1)->get();

        
        return view ('SS.haber.index',compact('data','parentcategory'));
    }
我的模型页


    public function parent_category()

    {
        return $this->belongsToMany('App\Models\SS\NewsCategory', 'news_category_s');

    }


我的观点

<td> @foreach ($parentcategory as $pc) {{$pc->category_name}} @endforeach </td>
@foreach($pc作为父类别){{{$pc->category_name}}@endforeach
我认为我在这方面遇到的问题很简单

我只能提取第5号新闻id的类别

我不知道如何打印其他数据的类别

如果公共函数更新($id){

它会像我那样工作


但是我应该能够在索引页上提取所有记录的类别。

我的英语很差。 我想也许你需要加上一个带('parent_category')的()


$data=News::all()->with('parent_category')->sortByDesc('created_at'))

当您尝试获取其他新闻的父类时会发生什么情况?如果有任何错误,请更新您的问题。我不知道如何获取该部分。我必须为此向控制器写些什么,我应该在视图中写些什么?@Psychology如果您想将所有新闻与新闻类别联系起来?如果是,则这里有一个解决方案。建立新的关系s使用newscegory模型建模,并使用with.like公共函数newscegory(){return$this->belongsomany(newscegory::class,'category_id','id');}使用该函数–不幸的是,这些不是解决方案。对于您的答案,方法illumb\Database\elounce\Collection::with不存在。:(all()使$data集成为集合,您可以尝试其他方式获取所有数据:$data=News::with('parent_category')->get();