在我的項目中,我的訂單中有許多產品和訂單數量很多的客戶。我很困惑,因爲我想獲得某個客戶的所有訂單以及每個訂單的產品。我搞砸了某個地方,我不知道我是否正確設置了我的關係。這裏是我的產品表:在Laravel中無法在模型中顯示數據
這裏是我的客戶表:
這裏是我的訂單表:
這裏是我的模型:
產品:
class Product extends Model
{
public function orders()
{
return $this->belongsToMany('App\Order');
}
}
訂單:
class Order extends Model
{
public function products()
{
return $this->hasMany('App\Product', 'id');
}
public function customer()
{
return $this->belongsTo('App\Customer');
}
}
客戶:
class Customer extends Model
{
public function orders()
{
return $this->hasMany('App\Order', 'id');
}
}
我從我的數據庫中的所有客戶與我CustomersController App\Customer::all()
在我customers.blade傳遞數據.PHP。
<h1>Customers:</h1>
@foreach($customers as $customer)
<h3>{{$customer->name}}</h3>
@foreach($customer->orders as $order)
<p>Order ID: {{$order->id}}</p>
@foreach($order->products as $product)
<p>Product title: {{$product->title}}</p>
@endforeach
@endforeach
<hr>
@endforeach
這裏是輸出:
如果有人可以解釋爲什麼它不輸出的一切,給一些建議,如果這是去的關係的方式,我會非常感謝。
嘗試將{{}}更改爲{!!} !!} –
爲了改變模型'return $ this-> hasMany('App \ Product','id');'to'return $ this-> hasMany('App \ Product');' –