将几个变量传递给 blade 视图
Passing several variables to blade view
我正在使用 Laravel 5.5 并且正在加载我的数据,如下所示:
public function details($id)
{
$instrument = Instruments::join('revisions', 'revisions.id', '=', 'instruments.revisions_id')
->where([
['revisions.revision_status', '=', '1'],
['instruments.id', '=', $id],
])
->orderBy('instruments.name')
->get();
$team = Team::join('instruments', 'teams.instruments_id', '=', 'instruments.id')
->join('revisions', 'revisions.id', '=', 'teams.revisions_id')
->where([
['revisions.revision_status', '=', '1'],
['instruments.id', '=', $id],
])
->orderBy('instruments.name')
->get();
return view('details')->with('instrumentUnderEdit', $instrument)->with('teamUnderEdit', $team);
}
但是,在我看来,我收到以下错误:
ErrorException thrown with message "Property [image] does not exist on this collection instance. (View: C:\Users\admin\Desktop\Projects\demo_laravel_screener\resources\views\details.blade.php)"
blade 文件有以下变量:
<img style="height: 32px; width: 32px;" src="{{ asset('images')}}/{{ $instrumentUnderEdit->image }}" /> {{ $instrumentUnderEdit->name }}
对于我收到错误的原因有什么建议吗?我是否将变量错误地加载到视图中?
感谢您的回复!
由于 get()
给你 collection 个对象,而不是一个,你应该修改代码:
使用->first()
代替->get()
这将为您提供具有所需属性的单个对象。
我正在使用 Laravel 5.5 并且正在加载我的数据,如下所示:
public function details($id)
{
$instrument = Instruments::join('revisions', 'revisions.id', '=', 'instruments.revisions_id')
->where([
['revisions.revision_status', '=', '1'],
['instruments.id', '=', $id],
])
->orderBy('instruments.name')
->get();
$team = Team::join('instruments', 'teams.instruments_id', '=', 'instruments.id')
->join('revisions', 'revisions.id', '=', 'teams.revisions_id')
->where([
['revisions.revision_status', '=', '1'],
['instruments.id', '=', $id],
])
->orderBy('instruments.name')
->get();
return view('details')->with('instrumentUnderEdit', $instrument)->with('teamUnderEdit', $team);
}
但是,在我看来,我收到以下错误:
ErrorException thrown with message "Property [image] does not exist on this collection instance. (View: C:\Users\admin\Desktop\Projects\demo_laravel_screener\resources\views\details.blade.php)"
blade 文件有以下变量:
<img style="height: 32px; width: 32px;" src="{{ asset('images')}}/{{ $instrumentUnderEdit->image }}" /> {{ $instrumentUnderEdit->name }}
对于我收到错误的原因有什么建议吗?我是否将变量错误地加载到视图中?
感谢您的回复!
由于 get()
给你 collection 个对象,而不是一个,你应该修改代码:
使用->first()
代替->get()
这将为您提供具有所需属性的单个对象。