как загрузить вложенные отношения в laravel - PullRequest
1 голос
/ 29 апреля 2019

У меня есть 3 модели, которые я хочу начать с a и загрузить отношение с b, и я хочу загрузить отношение между b и c в a тоже возможно ли это ?? вот что я хочу сделать в коде:

AccommodationRoomModel which is the B model:
public function accommodation(){
        return $this->belongsTo(Accommodation::class);
    }

  public function roomPricingHistory(){
    return $this->hasMany(RoomPricingHistory::class);
}

и в модели размещения:

public function accommodationRoom()
{
    return $this->Hasmany(AccommodationRoom::class);
}

и, наконец, в стоимости номераИстория:

 public function accommodationRoom(){
    return $this->belongsTo(AccommodationRoom::class);
}

теперь в моем контроллере размещения я хочу получить все помещения вместе с комнатой и из комнаты, я хочу получить цену, поэтому вот она

A = Accomodation
B = Room
C = price

и я хочу позвонить как-нибудь так

From A get B and The relation Of it with C and show all in A

Ответы [ 2 ]

1 голос
/ 29 апреля 2019

Вы можете использовать вложенную нетерпеливую загрузку Laravels для этого:

Из документов :

Чтобы загружать вложенные отношения, вы можете использовать "точку"синтаксис.Например, давайте с энтузиазмом загрузим всех авторов книги и все личные контакты автора в одно красноречивое утверждение:

$books = App\Book::with('author.contacts')->get();

В вашем случае:

$accomodations = Accomodation::with('accommodationRoom.roomPricingHistory')->get();
1 голос
/ 29 апреля 2019
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...