Laravel一对多关系的麻烦

时间:2014-11-21 05:51:48

标签: laravel-4 eloquent

我被困在Laravel的一对多关系中,似乎应该是直截了当的。我一定是在误解一些事情:

我的桌子:

发票(属于承包商)(属于客户)

  • ID
  • contractor_id
  • CUSTOMER_ID
  • other_columns

客户(属于承包商)(有很多发票)

  • ID
  • contractor_id
  • other_columns

承包商(有很多发票)(有很多客户)

  • ID
  • other_columns

我正在尝试列出所有发票及其所属客户的名称。

为此,我在模型中建立了如下的雄辩关系:

protected $table = 'customers';

public function contractor() {
    return $this->belongsTo('Contractor', 'contractor_id');
}

public function invoices()
{
    return $this->hasMany('Invoice');
}

也为承包商和发票建立了关系。

我将变量传递给我的视图,然后尝试迭代:

  @foreach($estimates as $estimate)
  <tr>
   <td>
      <h4><strong>{{$estimate->title}}</strong></h4>
         <i class="fa fa-fw fa-usd text-info"></i> {{$estimate->total}}<br>
         <i class="fa fa-fw fa-user text-danger"></i> {{$estimate->customer->name}} <br>
         <i class="fa fa-fw fa-phone text-info"></i> {{$estimate->phone}}
   </td>
  </tr>
   @endforeach

我得到的错误是:&#34;试图获得非对象的属性&#34;在{{$ estimate-&gt; customer-&gt; name}}

的行上

似乎这应该起作用,因为发票模型&#34;属于&#34;雄辩的客户模式。我错过了什么?

0 个答案:

没有答案