2010-07-25 10 views
29

estoy tratando de salida de la siguiente desde el interior de una plantilla de líquido:la salida de llaves literal en las plantillas de líquidos

{{ example }} 

Obviamente, Líquido ve esto como una variable llamada example y trata de hacer la sustitución. Estoy tratando de averiguar cómo puedo generar las llaves reales.

Hasta ahora, he encontrado un método que funciona, pero es increíblemente fea:

{{ '{example'|prepend:'{' }}}} 

Sí, le dijo que era grave.

Estas son otras cosas que he intentado:

{{{ example }}}  # outputs '}' 
{{{{ example }}}} # outputs '}}' 
\{\{ example \}\} # outputs '\{\{ example \}\}' 

Cualquier consejo aquí?

+1

Además de la respuesta 'raw/endraw' con la mayoría de los votos a continuación, también consulte "[¿Cómo escapar de las etiquetas de plantilla líquida?]" (Http://stackoverflow.com/q/3426182/102401) "que ofrece una comentando la solución tipo. –

Respuesta

7

¿Qué pasa con el uso de las entidades numéricas HTML { y } para { y } respectivamente - presumiblemente esto es a enviar como HTML?

EDIT: Perdóname, no estoy muy familiarizado con líquido (por lo que este podría ser muy mal), pero se puede asignar su {{ example }} especial valor a una variable y de salida que? Puede ser algo como:

{% assign special = '{{ example }}' %} 
{{ special }} 
+0

Desafortunadamente, la salida finalmente estará dentro de una etiqueta

98

También puede utilizar raw:

{% raw %} 

...lots of liquid code goes here and it doesn't get interpreted... 

{% endraw %} 
+4

Esta debería ser la respuesta aceptada. – graygilmore

+0

Esta debería ser la respuesta aceptada.Lo siguiente funcionó perfectamente para mí en una plantilla de script: 'moneyFormat: {% raw%} '$ {{amount_no_decimals}}'% endraw%}' – Avishai

0

Este es el único que funcionó de mí. Levantado de here:

{{ "{{ this " }}}} 

Necesitaba esto porque quería hacer referencia a la variable global site desde el interior de una plantilla bigote.

-2

Puede escapar del HTML, por ejemplo en un {{var}} puede usar \{\{var\}\}, por lo que luquid no lo procesa.

+1

\ {\ {no funciona en Liquid. Saldrá tanto las barras como las llaves. – djsumdog

Cuestiones relacionadas