2016-10-04 60 views
2

我使用leftJoin上laravel,但它得到一個錯誤

未定義的屬性:照亮\數據庫\雄辯\收藏:: $ ID

這裏控制器

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

    //dd($news); 

    return view('news.update') 
    ->with('news', $news); 

我一直在使用get(嘗試示例代碼) - >第(),但它只是只顯示第一個記錄。 如果我使用像這把劍的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> 

回答

2

嘗試做這樣的

$news = DB::table('news') 
      ->leftJoin('categories', 'categories.id', '=', 'news.category_id') 
      ->select('news.*', 'categories.*') 
      ->get(); 

- 「新聞」>選擇(「類別 「)//要選擇新聞類

<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> 
+0

喜,其工作:) 感謝你的幫助的所有記錄,但你能解釋一下$新聞[0]是什麼意思?它是這樣調用數組的索引嗎? 集合{#178▼ #items:數組:4 [▼ 0 => {#168}▶ 1 => {#180}▶2 => {#186}▶3 => {#187 ▶} ] } – rafitio

+0

$ news [0]從新聞數組中獲得第一條記錄 – Komal

相關問題