Laravel 5.8 получает доступ к другому свойству таблицы в отношении «один ко многим»

у меня 3 стола

  1. отель
  2. провинция
  3. город

отель имеет отношение к городу, а город имеет отношение к провинции. идентификатор города сохранится в поле города в таблице отелей. как я могу получить доступ к названию города и названия провинции в модели отеля?

в модели отеля я написал это:

  public function city(){
        return $this->belongsTo(City::class);
    }

а в городской модели у меня так:

   public function hotel(){
        return $this->hasMany(Hotel::class);
    }


    public function province(){
        return $this->belongsTo(Province::class);
    }

и в провинции

  public function cities(){
        return $this->hasMany(City::class);
    }
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Laravel Scout - это популярный пакет, который предоставляет простой и удобный способ добавить полнотекстовый поиск в ваше приложение Laravel. Он...
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
0
0
60
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Связь Имеет много через — это то, что вам нужно.

тем, как я могу получить к ним доступ в лезвии?

devmrh 29.05.2019 08:51

Таким же образом вы получаете доступ к любым другим отношениям Eloquent. С оператором ->.

Leonardo Rossi 29.05.2019 09:15
Ответ принят как подходящий
public function provinces()
{
    return $this->hasManyThrough('App\Province', 'App\City');
}

В модели отеля вы можете получить доступ к названию провинции, используя в контроллере, например

$hotel = Hotel::find(1);
dd($hotel->provinces);

и используйте эту переменную в лезвии

и как я могу получить к нему доступ в шаблоне лезвия?

devmrh 29.05.2019 08:50

Другие вопросы по теме