Laravel 5.8 получает информацию о текущей модели из отношения «многие ко многим» - PullRequest
0 голосов
/ 03 июня 2019

У меня есть три таблицы:

  1. отель

  2. hotel_feature

  3. hotel_feature_assing

«hotel» и «hotel_feature» имеют отношение многие ко многим.

В "hotel_feature_assing" я сохраню идентификатор отеля и идентификатор функции.

В разделе редактирования у меня есть флажок, я хочу показать флажок как checked, если текущий отель (тот, который редактируется) имеет функцию.

Как я могу проверить, что текущему отелю уже назначен флажок для проверки?

Это мой отель Модель:

  public function features()
    {
        return $this->belongsToMany(HotelFeature::class, 'hotel_feature_assigns');
    }

и в модели HotelFeature:

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

Это мой флажок:

@foreach($hotelfeatures as $key => $hotelfeature)
                    <input type="checkbox" name="idhotelfeature[]" id="idhotelfeature" value="{{ $hotelfeature->id }}"
                        style="margin-right:5px" @if ($hotel->is_feature)
                    checked
                    @endif><span class="font-weight-normal">{{ $hotelfeature->name_fa }}</span>
 @endforeach

1 Ответ

0 голосов
/ 03 июня 2019

Вы можете передать массив идентификаторов функций для отеля, например:

$hotel->features->first()->users->pluck('id')->all();

Где $hotel - это экземпляр отеля, который вы просматриваете, тогда вы можете использовать этот массив идентификаторов в цикле просмотра, чтобы решить, какой флажок должен быть установлен или нет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...