Non è possibile.
Come indicato nella documentazione:
Come funzioni PHP, le macro non hanno accesso al modello corrente variabili.
l'unica soluzione è quella di passare il parametro al macro
:
{% import _self as flow %}
{{ flow.pagedurl(1, "Ligio") }}
{% macro pagedurl(page, myname) %}
Hi {{ myname }}! This is Page Num {{ page }}
{% endmacro %}
NOTA IMPORTANTE:
Avrete notato nel mio esempio, io chiamo {% import _self as flow %}
.
Questo è qualcosa che MUST fare:
Quando si definisce una macro nel modello dove si sta andando ad usarlo, si potrebbe essere tentati di chiamare la macro direttamente tramite _self.input() invece di importarlo; anche se sembra funzionare, questo è solo un effetto collaterale dell'implementazione corrente e non funzionerà più in Twig 2.x.
http://twig.sensiolabs.org/doc/tags/macro.html
Hai provato un semplice '{{myname}}'? – Maerlyn
con {{myname}} Non sono nella portata della variabile ... Non funziona! – Ligio