Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 21.08.2021 17:02:05

Majestio
Откуда: Минск
Сообщений: 23
Сайт

Передать количество повторений в наследуемый шаблон Blade

У меня есть вот такая реализация наследуемых шаблонов (упрощенная разметка):

chunks/incl.blade.php

@for ($i = 2; $i <= $count; $i++) 
  <div id="card-guests-{{ $i }}" class="card-body booking-card-body d-none"></div>
@endfor

layouts/parent.blade.php

<div id="guests-info">
@yield('guest-count')
@include('chunks.incl', ['count' => $guest_count])
</div>

child.blade.php

@extends('layouts.parent')
@section('guest-count')
@php
$guest_count = 20;
@endphp
@endsection
@section('room-guests',20)

Все работает как надо, но мне не нравится реализация!
Видимо что-то я не доучил, что-то не дочитал ...

Вопрос
Как еще можно (более красиво) из шаблона child.blade.php передать количество повторений во включаемый шаблон incl.blade.php?

Не в сети

#2 23.08.2021 08:09:39

Re: Передать количество повторений в наследуемый шаблон Blade

В простейшем случае счётчик вообще не надо передавать, если он всегда одинаков. Определяй его в incl.
Другой вариант: передавать значение в @extends('layouts.parent', ['guest_count' => 20])
Третий вариант: получать значение через blade composer непосредственно в incl

Что будет "лучше/красивее" — это очень субъективно. Пробуй разное, развивай свой активный словарь и решай что лучше для тебя.


There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.

Не в сети

#3 24.08.2021 11:14:04

Majestio
Откуда: Минск
Сообщений: 23
Сайт

Re: Передать количество повторений в наследуемый шаблон Blade

Супер! Спасибо. Второй вариант - то, что нужно!

Не в сети

Подвал раздела