Laravel雄辩的关系查询

时间:2014-10-25 10:31:25

标签: php laravel

我想检索用户风险类别

风险表

id
risk
category_id

risk_user表

id
risk_id
user_id

risk_categorys

id
category

要检索风险类别工作正常,在我的模型中我这样做:

class Risk extends Eloquent{

    protected $table = 'risks';

    public $timestamps = false;

    public function users()
    {
        return $this->belongsToMany('User');
    }

    public function category() 
    {
        return $this->belongsTo('RiskCategory');
    }

}

但是,在检索特定用户的所有风险类别时,我很困难。

1 个答案:

答案 0 :(得分:1)

我这样做:

用户模型

class User extends Eloquent{    
    public function risks(){
        return $this->belongsToMany('Risk');
    }
}

然后,您可以使用Eager Loading获取所有风险的类别。

<强>查询

User::find(1)->risks()->with('category')->get();

由于我没有你的所有代码或你的数据库,我无法测试它,但理论上它应该可以工作;)如果没有,请给我留言。