Как добавить динамически объединенное имя файла для тега include в Selmer (Clojure)?
2 ответа
Решение
Если правая страница является верной строкой, которую вы передаете на страницу, я думаю, что это будет работать для вас
{% include right-page %}
Любые цели для включения в selmer должны быть известны, когда selmer компилирует шаблон, что происходит без переданных данных. Это означает, что, учитывая шаблон:
template.html_template:
{% include right-page %}
и код закрытия:
(selmer/render-file template.html_template
{right-page "some/other/template/file.html_template})
Вы можете ожидать исключения. Что касается обхода, вы могли бы рассмотреть
(selmer/render-file template.html_template
{right-page (selmer/render-file
"some/other/template/file.html_template {})})
или что-то подобное.
Вам, конечно, придется обновить template.html, чтобы включить уже обработанный текст и отключить экранирование, например, так:
template.html_template:
{{right-page|safe}}