2016-05-02 179 views
2

我一直坚持这种雄辩的关系一段时间。 (我使用的是laravel 5.2)Laravel坚持雄辩问题

用户可以拥有多个单独拥有飞机类型的证书。但是,可能有一个没有飞机类型的“空白”证书。

我的目标是调用$ user->证书,并用相应的飞机类型检索用户的所有证书。

我有以下型号。

User 
    id 
    ... 


    Aircrafttype 
    id 
    name 


    Certificate 
    id 
    name 


    CertificateUser 
    id 
    certificate_id 
    aircrafttype_id 
    user_id 

在此先感谢!

回答

1

您只需要在User型号和CertificateUser型号之间添加关系即可。

通过它的声音,用户可以有很多证书 - 所以你会想要使用hasMany关系。因为你有一个在CertificatUser表称为user_id列,你可以简单地设置您的User模型内像这样(的关系:

public function certificates() 
    { 
     return $this->hasMany('App\CertificateUser'); 
    } 

您现在可以通过$user对象与$user->certificates;

+0

我访问此使用belongsToMany关系,谢谢! –

+0

不用担心,如果您愿意,还可以添加与belongsTo CertificateUser的相反关系。 – James