"Property does not exist on this collection instance" 加入时出错 laravel 5.4
"Property does not exist on this collection instance" error while joining in laravel 5.4
UserAcademyController.php
public function view_video()
{
$materialList = DB::table('material')
->join('material_group', 'material.group_id', '=', 'material_group.id')
->select('material.*', 'material_group.group_thumbnail_url')
->get();
return view('user-academy.view_video', ['materialList' => $materialList]);
}
view_video.blade.php
@foreach ($materialList as $material)
<div class="col-sm-6 col-lg-4 col-md-4">
<div class="thumbnail">
<a href="{!! url('user-academy/view/' . $material->id)!!}">
@if($material->thumbnail_url !== null)
<img src="{{$material->thumbnail_url}}"
style="width: 700px; height: 300px">
@elseif($materialList->group_thumbnail_url !== null)
<img src="{{$materialList->group_thumbnail_url}}"
style="width: 700px; height: 300px">
@elseif($material->thumbnail_url !== null && $materialList->group_thumbnail_url !== null)
<img src="http://www.independentmediators.co.uk/wp-content/uploads/2016/02/placeholder-image.jpg"
style="width: 700px; height: 300px">
@endif
</a>
<div class="caption">
<h4 class="pull-right text-success">${{$material->price}} </h4>
<h4>
<a href="{!! url('user-academy/view/' . $material->id) !!}">{{ $material->title }}</a>
</h4>
<hr>
<p class="description">{!! $material->description !!} </p>
</div>
</div>
</div>
@endforeach
This is the "material" table
This is the "material_group" table
即使我完全复制了 laravel 文档中的所有内容并观看了很多关于这个主题的视频,我还是收到了这个错误我是一个新的程序员,所以这可能是一个非常明显的错误,但我已经花了相当多的时间时间看代码,就是找不到错误所在!
您正在尝试访问 Collection
class 上的 group_thumbnail_url
属性,这肯定不存在,这就是您收到该错误的原因。
解决办法是把$materialList->group_thumbnail_url
换成material->group_thumbnail_url
UserAcademyController.php
public function view_video()
{
$materialList = DB::table('material')
->join('material_group', 'material.group_id', '=', 'material_group.id')
->select('material.*', 'material_group.group_thumbnail_url')
->get();
return view('user-academy.view_video', ['materialList' => $materialList]);
}
view_video.blade.php
@foreach ($materialList as $material)
<div class="col-sm-6 col-lg-4 col-md-4">
<div class="thumbnail">
<a href="{!! url('user-academy/view/' . $material->id)!!}">
@if($material->thumbnail_url !== null)
<img src="{{$material->thumbnail_url}}"
style="width: 700px; height: 300px">
@elseif($materialList->group_thumbnail_url !== null)
<img src="{{$materialList->group_thumbnail_url}}"
style="width: 700px; height: 300px">
@elseif($material->thumbnail_url !== null && $materialList->group_thumbnail_url !== null)
<img src="http://www.independentmediators.co.uk/wp-content/uploads/2016/02/placeholder-image.jpg"
style="width: 700px; height: 300px">
@endif
</a>
<div class="caption">
<h4 class="pull-right text-success">${{$material->price}} </h4>
<h4>
<a href="{!! url('user-academy/view/' . $material->id) !!}">{{ $material->title }}</a>
</h4>
<hr>
<p class="description">{!! $material->description !!} </p>
</div>
</div>
</div>
@endforeach
This is the "material" table
This is the "material_group" table
即使我完全复制了 laravel 文档中的所有内容并观看了很多关于这个主题的视频,我还是收到了这个错误我是一个新的程序员,所以这可能是一个非常明显的错误,但我已经花了相当多的时间时间看代码,就是找不到错误所在!
您正在尝试访问 Collection
class 上的 group_thumbnail_url
属性,这肯定不存在,这就是您收到该错误的原因。
解决办法是把$materialList->group_thumbnail_url
换成material->group_thumbnail_url