Laravel关系结果无法获取相同的外键

时间:2017-07-05 12:42:54

标签: php laravel laravel-eloquent

我的表格如下所示,

donation_requests
---------------------------------------------------------------
| id    name    donation_type_id    donation_request_type_id
|--------------------------------------------------------------
| 1     xyz     1                   3
| 2     pqr     3                   2
| 3     abc     3                   1
| 4     klm     4                   1


donation_types
------------------------
| id    name
-----------------------
| 1     jakat
| 2     sadka
| 3     lillah
| 4     fitra


donation_request_types
------------------------
| id    name
-----------------------
| 1     widow
| 2     masjid
| 3     madresha

我希望donation_request数据包含donation_types名称和donation_request_types名称 在我的DonationRequest模型代码如下

public function donation_types()
{
    return $this->belongsTo('App\DonationType','id','donation_type_id');
}

public function donation_request_types()
{
    return $this->belongsTo('App\DonationRequestType','id','donation_request_type_id');
}

但是在前两行我得到了正确的结果但是第三行有相同的donation_type_id为3所以它给出空白和donation_request_type_id相同

tinker screenshot

2 个答案:

答案 0 :(得分:1)

public function donation_types()
{
    return $this->belongsTo('App\DonationType');
}

public function donation_request_types()
{
    return $this->belongsTo('App\DonationRequestType');
}

答案 1 :(得分:0)

根据我的上述问题,关系工作正常,并且在laravel修补程序中存在问题。虽然在邮递员测试中我发现了完美的结果,但是修补时会出现一些问题。更新修补程序但仍然有同样的问题。