лезвие ларавеллы, ограничивающее показ изображений - PullRequest
0 голосов
/ 25 сентября 2019

у всех, у меня проблема с лезвием laravel. У меня есть страница для моего сайта, которая показывает все изображения, потому что мой сайт - это сайт продажи, но когда я загружаю страницу, он показывает все изображения, но я не хочу показыватьвсе изображения, которые я хочу, чтобы скрыть изображения после трех или четырех столбцов, если кто-то может мне помочь, пожалуйста.спасибо всем.

это мой код лезвия:

 <section class="container custom-margin ">
        <h5 class="text-center" style="text-shadow:  1px 1px 2px black; color: #1b1e21">مجموعه ما با ۲۰۰۰ خوابگا در سطح کشور</h5>
        <div class="justify-content-center thin-underline-1"></div>
        <div class="row justify-content-center">
          @foreach($hostels as $hostel)
            @foreach($hostel->hostelDetails->attachments as $photo)
              <div class=" col-12 col-sm-6 col-md-6  col-lg-3 px-1  mt-4 small-device-hid ">
                    <div class="card card-shadow custom-height-1 " style="border-radius: 0%">
                      <a href="{{route('khabgah_detailes.goToDetails',$hostel->id)}}"> <img  src="/images/{{ $photo->file_name }}"
                        class="card-img-top card-img custom-card-img-height" alt=""></a>
                        <div class="car-body">
                            <div class="card-footer">
                                <div class="custom-circle"><p class="custom-circle-text card-text"><b>
                                  @if($hostel->type == 1)
                                  {{ 'ذکور'}}
                                  @else {{ 'اناث' }}
                                  @endif
                                 </b></p></div>
                                <div class="custom-prices card-text text-left"> کرایه فی ماه : {{$hostel->hostelDetails->remark }}  </div>
                                <div class="row mt-3">
                                    <div class="col-12 col-sm-12 col-md-12 mb-2 ">
                                        <span class="card-text">آدرس :  {{$hostel->addresses->state }}  {{$hostel->addresses->rood}}
                                            {{$hostel->addresses->station }}  {{$hostel->addresses->alley}}
                                          </span>
                                    </div>

                                </div>
                            </div>
                        </div>
                    </div>
                  </div>
                @endforeach
            @endforeach
          </div>
    </section>

1 Ответ

1 голос
/ 25 сентября 2019

Поскольку каждое отношение Laravel возвращает экземпляр коллекции, вы также можете использовать метод take для получения первых N объектов в вашей коллекции.

Например:

@foreach($hostel->hostelDetails->attachments->take(3) as $photos)

Другой способ - использовать построитель запросов отношения вложений, чтобы ограничить результаты на уровне запроса:

@foreach($hostel->hostelDetails->attachments()->limit(3)->get() as $photos)

В последнем способе предпочтение будет отдаваться предпочтительным с точки зрения производительности, поскольку он будет только извлекать необходимые модели из базы данных.,Первый будет извлекать все модели из базы данных и отображать только некоторые из них.

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