Я настоятельно рекомендую вам изменить названия вашей модели на Город и Номер .Если вы не хотите этого, убедитесь, что в обеих моделях вы подключаете их к правильной таблице, вы можете добиться этого с помощью переменной $table
в обеих моделях, например:
$table = 'your_table_name';
Это сделаетубедитесь, что таблица подключена правильно.
Кроме того, вы должны внести несколько изменений:
В вашей модели TotalCity сделайте следующее:
public function rooms()
{
return $this->hasMany(MyRoom::class , 'total_city_id')->withTrashed();
}
В вашей MyRoom модели сделайте это:
public function city()
{
return $this->belongsTo(TotalCity::class)->withTrashed();
}
В вашем SiteController сделайте это:
public function room($id) {
$rooms = TotalCity::find($id)->rooms;
return view('frontend.pages.rooms', compact('rooms'));
}
В вашем Просмотр
@foreach($rooms as $room)
<h2>{{$room->name}}</h2>
<div class="room">
<a href="{{ route('description',$room->id) }}"><img src="{{ asset(env('UPLOAD_PATH').'/' . $room['photoi1']) }}"/></a>
</div>
@endforeach