首页 > 解决方案 > 使用 Laravel 中的关系作为子查询来获取结果

问题描述

这导致我出现错误:where('like:is_liked',Auth::user()->id) 在堆栈跟踪中说在事件表中找不到'is_liked'。

 $events = Event::select('id', 'name', 'image', 'description', 'datetime', 'description', 'is_published')
            ->with('like:id,id_event,id_user,is_liked,created_at')
            ->with('like.user:id,name,surname')
            ->where('is_published', 1)->where('like:is_liked',Auth::user()->id)
            ->paginate(6);

标签: phplaravelormmigrationrelationship

解决方案


$events = Event::select('id', 'name', 'image', 'description', 'datetime', 'description', 'is_published')->with(['like'=>function($query) use ($user_id){
                $query->where('is_liked',$user_id);
              }])->where('is_published', 1)->paginate(6);

你可以试试这样


推荐阅读