Можно ли получить визуализированное содержимое тела из шаблона Mako?Я имею в виду, что могу отображать тело, используя ${self.body()}, но что, если я сначала хочу что-то с ним сделать?
${self.body()}
Очевидно, что я искал функцию capture .Из документов:
capture
Другой способ буферизовать вывод def или любого вызываемого по Мако вызова - использовать встроенную функцию захвата.Эта функция выполняет операцию, аналогичную указанной выше операции буферизации, за исключением того, что она указана вызывающей стороной.
${" results " + capture(somedef) + " more results "}
Или в моем случае:
<% body = capture(self.body) # etc. %>
Один из подходов состоит в том, чтобы пропустить его через пользовательский фильтр
<% def myFilter(txt): return "whatever I want to do it" >% ${self.body() | myFilter}