我想在我的下拉列表中设置所选的选项, 我已经设置了这样的代码
@foreach($news as $news_data)
@if($news_data->category_id)
<option value="{{ $news_data->category_id }}" selected>{{ $news->category }}</option>
@else
<option value="{{ $news_data->id }}">{{ $news_data->category }}</option>
@endif
@endforeach
这是我的控制器
public function edit($id)
{
/*show current selected*/
$news = News::find($id)
->leftJoin('categories','news.category_id', '=', 'categories.id')
->select('news.category_id', 'news.content', 'news.title' ,'categories.category', 'categories.id')
->where('news.id', '=', $id)
->get()->first();
// /dd($news->id);
return view('news.update')
->with('news', $news);
}
但我得到这样的错误
尝试获取非对象的属性
答案 0 :(得分:0)
你只是抓住第一个数据并迭代它。 dd($news);
给你什么?
答案 1 :(得分:0)
答案 2 :(得分:0)
您没有选择news.id
。但是您查看了$news_data->id
<option value="{{ $news_data->id }}">{{ $news_data->category }}</option>
试试这个:
$news = News::leftJoin('categories','news.category_id', '=', 'categories.id')
->select('news.id','news.category_id', 'news.content', 'news.title' ,'categories.category', 'categories.id')
->where('news.id', '=', $id)
->get();