我正在尝试从下拉列表中的文件表中获取一些数据(所有文件名),但它给出了错误:未定义的变量:文件
控制器:
public function show($id)
{
$data = File::findOrFail($id);
$files = \DB::table('files')->get();
return view('userhome', compact('data', 'files'));
}
刀片模板:
<div class="form-group">
<label class="text-left">Select Record</label>
<select name="parent_id">
<option value="">Select Record</option>
@foreach ($files as $filename)
<option value="{{ $filename->id }}">{{ $files->filename }}</option>
@endforeach
</select>
</div>
web.php:https://ibb.co/xMswcTG
什么原因导致此错误?
答案 0 :(得分:2)
您将userhome.blade.php返回到控制器中,但尝试将$ files和$ data变量放入home.blade.php
更改
return view('userhome', compact('data', 'files'));
到
return view('home', compact('data', 'files'));
所有人都必须工作;)
答案 1 :(得分:1)
您需要在options标记中使用“ $ filename->”对象而不是“ $ files->”对象。 请使用以下代码更新刀片。
<div class="form-group">
<label class="text-left">Select Record</label>
<select name="parent_id">
<option value="">Select Record</option>
@foreach ($files as $filename)
<option value="{{ $filename->id }}">{{ $filename->filename }}</option>
@endforeach
</select>
</div>