Php Laravel错误leftJoin:未定义的属性:Illumb\Database\Eloquent\Collection::$id

Php Laravel错误leftJoin:未定义的属性:Illumb\Database\Eloquent\Collection::$id,php,laravel,laravel-5.3,Php,Laravel,Laravel 5.3,我在laravel上使用leftJoin,但它出错了 未定义的属性:Illumb\Database\Eloquent\Collection::$id 这里是控制器上的示例代码 $news = News::find($id) ->leftJoin('categories', 'news.category_id', '=', 'categories.id') ->get(); //dd($news); return vi

我在laravel上使用leftJoin,但它出错了

未定义的属性:Illumb\Database\Eloquent\Collection::$id

这里是控制器上的示例代码

$news = News::find($id)
            ->leftJoin('categories', 'news.category_id', '=', 'categories.id')
            ->get();

    //dd($news);

    return view('news.update')
    ->with('news', $news);
我一直在尝试使用get()->first(),但它只显示第一条记录。 如果我像这样在刀片上使用foreach,错误也是一样的

<form class="form-horizontal" action="/news/{{$news->id}}" method="post" enctype="mulipart/form-data">
<select name="category_id">
    <option> - </option>
    @foreach($news as $news)
    <option value="{{ $news->category_id }}" selected>{{ $news->category }}</option>
    @endforeach 
</select> </form>

- 
@foreach($news作为$news)
{{$news->category}
@endforeach
试着这样做

$news = DB::table('news')
          ->leftJoin('categories', 'categories.id', '=', 'news.category_id')
          ->select('news.*', 'categories.*')
          ->get();
->选择('news.','categories.')//从新闻和类别中选择所有记录

<form class="form-horizontal" action="/news/{{$news[0]->id}}" method="post" enctype="mulipart/form-data">
  <select name="category_id">
      <option> - </option>
      @foreach($news as $news_data)
        <option value="{{ $news_data->category_id }}" selected>{{ $news_data->category }}</option>
      @endforeach 
  </select> 
</form>

- 
@foreach($news作为$news\u数据)
{{$news_data->category}
@endforeach

您好,正在运行:)谢谢您的帮助,但您能解释一下$news[0]的含义吗?它是这样调用数组的索引的吗?收藏{#178▼ #项目:阵列:4[▼ 0 => {#168 ▶} 1 => {#180 ▶} 2 => {#186 ▶} 3 => {#187 ▶} ] }$新闻[0]从新闻数组中获取第一条记录