Esta pregunta parece contestada, pero una solución más elegante que no se ha mencionado es simplemente encerrar las llaves entre comillas entre las llaves, así:
{{ '{{myModelName}}' }}
Si está utilizando una variable para el contenido, haga esto en su lugar:
{{ '{{' ~ yourvariable ~ '}}' }}
Debe usar comillas simples , no comillas dobles. Las comillas dobles permiten la interpolación de cadenas por Twig, por lo que debe tener más cuidado con el contenido, especialmente si está utilizando expresiones.
Si todavía odias ver todas esas llaves, también puedes crear una macro simple para automatizar el proceso:
{% macro curly(contents) %}
{{ '{{' ~ contents ~ '}}' }}
{% endmacro %}
Guárdelo como un archivo e impórtelo a su plantilla. Estoy usando ng
el nombre porque es corto y dulce.
{% import "forms.html" as ng %}
O puede colocar la macro en la parte superior de su plantilla e importarla como _self (ver aquí) :
{% import _self as ng %}
Luego úsalo de la siguiente manera:
{{ ng.curly('myModelName') }}
Esto produce:
{{myModelName}}
... y un seguimiento para aquellos que usan MtHaml junto a Twig. MtHaml permite el uso de curvas AngularJS de la manera normal porque se accede a cualquier código Twig - y = en lugar de {{}}. Por ejemplo:
HTML sin formato + AngularJS:
<tr ng-repeat="product in products">
<td> {{ product.name }} </td>
</tr>
MtHaml + AngularJS:
%tr(ng-repeat="product in products")
%td {{ product.name }}
MtHaml + AngularJS con ramita de estilo MtHaml:
- set twigVariable = "somevalue"
= twigVariable
%tr(ng-repeat="product in products")
%td {{ product.name }}