这是我的控制器代码:
$exam_categories = ExamCategory::all();
return view('test.test-home')->withExamCategories($exam_categories);
这是我的刀片模板代码:
<select class="custom-select form-control-lg exam-category" id="exam-category" style="font-weight: bold">
<option selected>Select</option>
@foreach($exam_categories as $examCategory)
<option value="{{$examCategory->id}}">{{$examCategory->Category}}</option>
@endforeach
</select>
如果我运行此代码,则它将显示以下错误:
未定义变量: exam_categories (查看:/var/www/myproj/resources/views/test/test-test.home.blade.php)
在laravel 5.4版本中它可以正常工作,但是当我更新到laravel 5.8时,它无法工作。
答案 0 :(得分:2)
尝试使用紧凑型。
$exam_categories = ExamCategory::all();
return view('test.test-home', compact('exam_categories'));
OR
$exam_categories = ExamCategory::all();
return view('test.test-home')->with(['exam_categories' => $exam_categories]);
答案 1 :(得分:1)
以下是将数据传递给视图的两种方法:
$exam_categories = ExamCategory::all();
return view('test.test-home')->with('exam_categories',$exam_categories);
$exam_categories = ExamCategory::all();
return view('test.test-home',['exam_categories',$exam_categories]);
现在,您可以使用$exam_categories
在视图中轻松访问变量。
有关更多信息,您可以阅读文档here