2017-05-27 27 views
0

我有一個具有許多預約模型的客戶端模型。約會屬於客戶。我試圖返回顯示客戶姓名的結果以及索引刀片上的約會列表。這是我到目前爲止的代碼:此收藏實例上不存在此屬性

客戶端模型

public function appointment() 
{ 
    return $this->hasMany(Appointment::class); 
} 

約會型號

public function client() 
    { 
     return $this->belongsTo(Client::class); 
    } 

Controlller

$clients = Client::with('appointment')->get(); 

     //dd($clients); 
     return view('scheduler')->withclients($clients); 

刀片

@foreach($clients as $client 
{{ $client->name }} 
{{ $client->appointment->id }} 
@endforeach 

如何打印$客戶名稱及其約會列表?我已經嘗試過有關這個問題的其他幫助,但我不清楚我的錯在哪裏。

+0

你錯過了'@ foreach'行的paranthese。此外,你是怎麼想出'withclients()'函數的。它看起來怎樣?您可以通過'return view('..') - > with(compact(「clients」));將值傳遞給視圖 – manniL

回答

0

所以你的關係是一個一對多的關係。那麼你有很多appointments

可以遍歷客戶列表的第一,並在內環在約會:

@foreach($clients as $client) 
{{ $client->name }} 
    @foreach($clients->appointment as $appointment) 
     {{ $appointment->id }} 
     {{ $appointment->name }} 
    @endforeach 
@endforeach 

無論如何,它可能會更容易走了過來appointment模型,因爲它是相對於只有一個客戶端:

@foreach(Appointment::all() as $appointment) 
    {{ $appointment->name }} 
    {{ $appointment->client->name }} 
@endforeach 
相關問題