Вы BusinessInfo В модели отсутствует отношение user
.Введите это в свой код:
public function user()
{
return $this->belongsTo('App\Models\User', 'user_id');
}
Ваш запрос не верен
Когда он находится на user_id, его отображение только 1 ElectrcityInfo со всеми записями.
Это потому, что вы используете метод first()
, который возвращает первый объект из коллекции.Вы должны использовать это:
$businesses = BusinessInfo::where('user_id', $user->id)->get();
Это вернет все объекты в соответствии с запросом.
Теперь вы можете зациклить массив $business
и получить доступ к каждой информации
foreach($businesses as $business)
{
$business->electricity()->first(); // this will return all your data from the BusinessInfo relation with the ElectricityInfo model
$business->gas()->first(); // this will return all your data from the BusinessInfo relation with the GasInfo model
}
Для получения более подробной информации о методе first()
и других методах нажмите здесь
Вы также можете взглянуть на раздел Eloquent: Relationships , чтобы узнать больше окак это работает
На ваш взгляд:
@foreach($businesses as $business)
{
{{$business->electricity()->first()}}
{{$business->gas()->first()}}
}
@endforeach