Я использую усы для рендеринга на сервере, а также на клиенте. Стратегия заключается в том, что у меня есть одностраничное приложение (отображаемое с усами на сервере), и этот шаблон извлекает фрагменты с сервера и использует их для визуализации json также на клиенте.
Теперь проблема с шаблонами. Я хочу визуализировать метки на сервере, но оставлю синтаксис усов на месте для отображения на клиенте. Допустим, у меня есть такой шаблон:
<html>
<head><title>{{label.title}}</title></head>
<body>
<h1>{{name}}</h1>
<p>{{description}}</p>
</body>
</html>
Рендеринг на стороне сервера заполнит метку, но теперь он также удаляет заполнители, которые не видны в контексте.
<html>
<head><title>Ze zjerman title</title></head>
<body>
<h1></h1>
<p></p>
</body>
</html>
Есть ли способ подключиться к Scalate и избежать этого? Я наивно пытался сойти с рук:
templateEngine.layout(path, Map(attributes:_*).withDefault((key)=>"{{"+key+"}}"))
... но очевидно, что он будет отброшен, как только карта будет обработана в цикле (например, в строке 576 TemplateEngine). Где подходящая точка подключения для этого?
Я также нашел noneString и nullString в RenderContext , но я думаю, что не могу сделать так, чтобы визуализатор выводил ключ, поскольку эти переменные являются просто строками ...
Я использую scalatra-scalate 2.0.2 и scala 2.9.0-1.