Может ли кто-нибудь сказать мне разницу между:
<g:if test="${foo.bar}">
а также
<g:if test="\${foo.bar}">
Реальный пример использования «\» перед «$»:
<g:if test="\${flash.message}">
Спасибо.
Может ли кто-нибудь сказать мне разницу между:
<g:if test="${foo.bar}">
а также
<g:if test="\${foo.bar}">
Реальный пример использования «\» перед «$»:
<g:if test="\${flash.message}">
Спасибо.
\${...}
поместит буквальную фигурную скобку в вывод, а не вычислит содержимое как выражение. Мне редко приходится использовать это в обычном GSP, но это очень часто встречается в шаблонах скаффолдинга, где механизм шаблонов использует тот же синтаксис ${}
для своих собственных выражений времени генерации, что и сгенерированный GSP во время выполнения, поэтому вам нужно \${}
в шаблоне скаффолдинга. для создания выражений в GSP, которые затем будут реально оцениваться во время выполнения при отображении страницы.
Этот http://grails.1312388.n4.nabble.com/How-do-you-avoid-interpolation-of-an-html-attribute-in-GSP-to-print-a-literal-with-td1353164.html помог мне избежать интерполяции знака доллара. \$ у меня не работает.