У меня есть шаблон Freemarker HTML, который включает в себя:
<#assign addr>${serverAddress}activate/${user.id?string.computer}</#assign> <p> <a href="${addr}">${addr}</a> </p>
Вывод HTML, полученный в результате этой разметки (при условии, что $ {serverAddress} = "http://myserver.com/ "и $ {user.id} = 20):
<a href="\"http://myserver.com/activate/20\"">http://myserver.com/activate/20</a>
Дополнительные \" в начале и конце атрибута href не вызывают проблем, но они не нужны и не элегантны Я не понимаю, почему они там, и я не знаю, как от них избавиться.
Я думаю, что нашел ответ. Просто опустить кавычки вокруг значения атрибута href: поэтому вместо
<a href="${addr}">${addr}</a>
я пишу
<a href=${addr}>${addr}</a>
, и результат будет таким, как ожидалось.
Не совсем интуитивно, но эй, это работает.
Можете ли вы написать это:
<#assign addr = “${serverAddress}activate/${user.id?string.computer}” >
В соответствии с лучшей практикой Freemarker: https://freemarker.apache.org/docs/ref_directive_assign.html