Laravel 5 关系无效
Laravel 5 relationship not working
我有课程和订阅类型。
订阅用户有订阅类型,我想要用户订阅类型匹配的所有课程。
我的尝试(returns 所有课程,而不仅仅是正确的课程):
$courses = Course::has('maintask')->with(['subscriptionType' => function ($q) use ($user)
{
return $q->where('subscription_type_id',$user->subscription[0]->subscription_type_id)->where('status','1');
}])->get();
有什么建议吗?
谢谢!
使用whereHas()
:
$courses = Course::has('maintask')
->whereHas('subscriptionType', function ($q) use ($user) {
$q->where('id', $user->subscription[0]->subscription_type_id)
->where('status', 1);
})->get();
我有课程和订阅类型。 订阅用户有订阅类型,我想要用户订阅类型匹配的所有课程。
我的尝试(returns 所有课程,而不仅仅是正确的课程):
$courses = Course::has('maintask')->with(['subscriptionType' => function ($q) use ($user)
{
return $q->where('subscription_type_id',$user->subscription[0]->subscription_type_id)->where('status','1');
}])->get();
有什么建议吗?
谢谢!
使用whereHas()
:
$courses = Course::has('maintask')
->whereHas('subscriptionType', function ($q) use ($user) {
$q->where('id', $user->subscription[0]->subscription_type_id)
->where('status', 1);
})->get();