从另一个模型中拉出关系的正确方法?

时间:2016-08-09 16:53:44

标签: php laravel eloquent relationships

我们有一个付款表,链接到客户的销售和销售链接。从付款表中链接到客户关系的正确方法是什么?

Payments.sale_id - > Sales.id Sales.client_id - > Client.id

我试过了:

class Payment extends Model {
    public function sale() {
        return $this->belongsTo('\\App\\Models\\Sale', 'sale_id');
    }

    public function client() {
        return $this->sale->client();
    }
}

当sale_id被填满时,哪个工作正常。但是,如果sale_id为NULL,则会中断(显然因为$ this-> sale在这种情况下为null)。

我想要一个仍允许通过$client属性/属性进行访问的Laravel解决方案。

1 个答案:

答案 0 :(得分:1)

避免致命错误的临时解决方案是使用get属性mutator而不是dd(json_encode($response));

client()

我们会看看是否有更好的解决方案。