【发布时间】:2016-08-04 21:19:33
【问题描述】:
我有这个查询,我想在 laravel 中返回前 5 个结果,但是 take() 和 first() 根本不起作用,它只适用于 get()。结果是每个 $id
查询
$user_lessons = DB::table('Home_LogStudents')
->join('LessonUnitSections','LessonUnitSections.leuns_ID','=','Home_LogStudents.LogSt_sectionID')
->join('LessonUnits','LessonUnits.leun_ID','=','LessonUnitSections.leuns_ID')
->join('Lessons','Lessons.less_ID','=','LessonUnits.leun_ID')
->where('Home_LogStudents.LogSt_action',101)
->where('Home_LogStudents.LogSt_studid',$id)
->orderBy('Home_LogStudents.LogSt_date','desc')
->get();
刀片
<div class="row">
<div class="col-md-12">
<div class="form-group">
@foreach($user_lessons as $ul)
{{ $user_lessons->less_Title }}
@endforeach
</div>
</div>
</div>
有什么建议我做错了吗?
【问题讨论】:
-
将
->limit(5)添加到您的查询中 -
未定义属性:Illuminate\Database\Query\Builder::$less_Title
-
如果您使用
->take(5),您仍然需要以->get();结束您的查询。你试过这个吗? -
试图获取非对象的属性:S
-
我的代码和刀片是否正确?
标签: php database laravel inner-join