我是laravel的新手,并且很难进行有效的ORM,我喜欢从具有特定用户ID的表中检索Favourite
个项目,但似乎找不到正确显示数据的方法
我从here引用并复制了喜欢的模型代码
型号:收藏夹
class Favourite extends BaseModel
{
public function favouritable()
{
return $this->morphTo();
}
}
型号:课程
public function favourites()
{
return $this->morphMany(Favourite::class, 'favouritable');
}
public function myFavourite()
{
return $this->favourites()->where('favor_user', '=', auth()->user()->id);
}
控制器:FavouriteController @ index
public function index()
{
$course = new Course();
$myfavs = $course->myFavourite();
//dd($myfavs);
$this->vdata(compact('myfavs'));
return view('front.favorites', $this->vdata);
}
在刀片视图中,但返回空/空白数据:
@foreach($myfavs as $myfav)
{{ $myfav->$course_name }}
@endforeach
当我dd($myfavs)
出现很多数据时,我找不到收藏夹表中存储的数据。
答案 0 :(得分:0)
我认为您已经添加了条件,但是忘记了使用一种方法获取结果的方法。
尝试:
$myfavs = $course->myFavourite()->get();
或:
$myfavs = $course->myFavourite()->take(<N>)->get;
或
::all()