Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][twig] Przekazanie do pętli tablicy a w przypadku gdy jest pusta inną tablicę.
Forum PHP.pl > Forum > PHP
luis2luis
Witam.

Potrzebuje zmodyfikować pętle for w pliku html która działa na mechaniźmie Twig.

W pliku głównym index.html dołączam pętle, do pętli przekazuje zmienną i działa to poprawnie.
Kod
{% include 'lista_ajax.tpl' with {'provided_list':lista} %}


Plik html z pętla, którą includuje.
Kod
{% for value in provided_list %}

{% endfor %}



Potrzebuje jednak do pętli jeżeli zmienna 'lista' nie istnieje, inną zmienną o nazwie 'provided_list'.

Próbowałem coś takiego, ale nie działa:

Kod
{% include 'lista_ajax.tpl' with {'provided_list':lista|provided_list} %}
trueblue
A tak?
https://twig.symfony.com/doc/3.x/filters/default.html
gornik
Ewentualnie:

  1. {% if lista is defined %}
  2. {% set providedList = lista %}
  3. {% else %}
  4. {% set providedList = innaZmienna %}
  5. {% endif %}
  6.  
  7. {% include 'lista_ajax.tpl' with { 'provided_list' : providedList } %}
LowiczakPL
Nie powinienieś w Twigu używać tagu include tylko funkcji

TAG {% include() %}
FUNKCJA {{ include() }}
luis2luis
Cytat(LowiczakPL @ 18.09.2021, 07:09:00 ) *
Nie powinienieś w Twigu używać tagu include tylko funkcji

TAG {% include() %}
FUNKCJA {{ include() }}


Czy naprawde jest jakaśznaczaca różnica pomiędzy {% include .. %} a {{ include(..) }} Oba sposoby działają.
Takie coś działa:
  1. {{ include('lista_ajax.tpl', {'provided_prod_list':box_1}) }}


a takie coś, nie:

  1. {{ include 'lista_ajax.tpl' with {'provided_prod_list':box_2} }}
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.