Laravel 5.0使用Where子句进行多对多查询

时间:2016-07-19 08:35:23

标签: php laravel-5

我需要一些laravel 5.0的帮助。 我有这三张桌子 公司 - >有很多类别 类别 - >有很多公司 在数据库中,我有pivot talbe Company_Categories。 我的问题是:如何让所有类别为== 1的公司。

public static function LoadCompaniesBySearch($catId, $conId, $firstLetter){

    $suppliersViewModel = Company::whereHas('category',function($q)
    {
        $q->where('category_id',$catId);
    })->all();

    foreach($suppliersViewModel as $model)
    {
        echo $model->name .'<br/>';
    }
}

我试过这个,但是我得到了以下错误

Call to undefined method Illuminate\Database\Query\Builder::category()

1 个答案:

答案 0 :(得分:0)

$suppliersViewModel = Company::whereHas('category',function($q) use($catId)
    {
        $q->where('category_id',$catId);
    })->all();