Mam niektóre zdefiniowane makra, które są wywoływane z kilku szablonów.Jak renderować makro Jinja2 z widoku do wywoływania?
Na przykład na stronie Produkt znajduje się sekcja Recenzja, która używa makr zdefiniowanych w 'helpers/review.jinja2'
do drukowania każdej recenzji. Plik 'helpers/review.jinja2'
Ma to dwa makra:
{% macro render_review(request,review) -%}
{% macro render_review_comment(request,comment) -%}
Gdy ktoś twierdzi opinię, za pośrednictwem ajax, chcę wrócić renderowany opinię aby dołączyć treści do sekcji Review.
Teraz mam pośrednią szablon 'review/review.jinja2'
, który wygląda tak:
{% import 'helpers/review.jinja2' as review_helper %}
{{ review_helper.render_review(request,review) }}
Ten szablon jest renderowane z widoku:
@view_config(route_name='review.add_review', renderer='review/review.jinja2')
def add_review(request):
return dict(review=my_new_review)
Ale mam nadzieję, że istnieje lepszy sposób to zrobić to. Czy możliwe jest renderowanie makra zdefiniowanego w szablonie?
Dzięki
właśnie zrobiłem szybkie wyszukiwanie do D Jinja2 za ocs i nie wygląda na to, że można to zrobić. –