У меня есть пользователь, у которого много свойств.Этот пользователь также должен иметь возможность просмотреть ставку предложений на его свойства.
Итак, установите связь.
User.php
public function properties(){
return $this->hasMany('App\Property');
}
Property.php
public function offers(){
return $this->hasMany('App\Offer');
}
Тогда в моем контроллере вот что у меня есть:
public function my_offers(){
$properties = Property::whereUserId(Auth::id())->get();
return view('pages.seller.offers.index', compact('properties'));
}
Затем я перехожу к своим представлениям так:
@if($properties)
<ul>
@foreach($properties as $property)
<li>{{$property->offers->offer_message}}</li>
@endforeach
</ul>
@endif
Когда я просматриваю страницуЯ вижу следующую ошибку:
Свойство [offer_message] не существует в этом экземпляре коллекции.
Но это свойство существует в моей таблице.
Если я изменю свой элемент списка на элемент ниже, я смогу увидеть массив:
<li>{{$property->offers}}</li>
Я также вижу это раньшеи после массива с данными есть два пустых массива, как показано на рисунке ниже:
Что-то, что я не правильно сделал?