Я создаю веб-сайт с использованием twisted.web.template, где несколько страниц имеют подокна с идентичным html-кодом. Поэтому я хочу использовать шаблоны и просто сбрасывать полную строку html в заполнители везде, где есть идентичный код. Но извращенная система шаблонов заключает эти строки в кавычки (похоже, отчасти из соображений безопасности), поэтому браузер не может интерпретировать их как html. Есть ли способ обойти это? Это кажется довольно нормальным сценарием использования, и, по моему опыту, это одно из основных применений php с apache...
Некоторый пример кода. Мой шаблон выглядит так
<html xmlns:t="http://twistedmatrix.com/ns/twisted.web.template/0.1">
<body>
<div t:render="content" />
</body>
</html>
и мой класс рендеринга в python
class ExampleElement(Element):
loader = XMLFile(FilePath('template.xml'))
@renderer
def content(self, request, tag):
return tag('<b>This content should be in bold, but is quoted</b>')
Я знаю, что для последней строки я мог бы написать (с соответствующим импортом)
return tag(tags.b('Bold content'))
но html-строки, которые я на самом деле хочу вставить, намного больше, и неудобно писать их так, а не просто одну необработанную html-строку.