Класс MakoTemplate
Класс MakoTemplate применяется для работы с шаблонами
движка Mako. Первым параметром передаётся имя файла шаблона
или его исходный код. Через именованные аргументы передаются
переменные, доступные внутри шаблона.
Синтаксис
MakoTemplate(source, [*args], [**kwargs])
Пример
Давайте создадим шаблон Mako и отрендерим его через класс
MakoTemplate:
<p>Hello, ${name}!</p>
from bottle import Bottle, MakoTemplate
app = Bottle()
@app.route('/')
def index():
tpl = MakoTemplate(name='index', filename='views/index.mako')
return tpl.render(name='user')
Результат выполнения кода:
<p>Hello, user!</p>
Пример
Давайте передадим исходный код шаблона прямо в конструктор:
from bottle import Bottle, MakoTemplate
app = Bottle()
@app.route('/')
def index():
tpl = MakoTemplate('Hello, ${name}!')
return tpl.render(name='abcde')
Результат выполнения кода:
Hello, abcde!
Пример
Давайте выведем список элементов внутри шаблона Mako:
% for item in items:
<p>${item}</p>
% endfor
from bottle import Bottle, MakoTemplate
app = Bottle()
@app.route('/')
def index():
tpl = MakoTemplate(name='list', filename='views/list.mako')
return tpl.render(items=['a', 'b', 'c', 'd', 'e'])
Результат выполнения кода:
<p>a</p>
<p>b</p>
<p>c</p>
<p>d</p>
<p>e</p>
Смотрите также
-
функцию
mako_template,
которая рендерит шаблон Mako -
класс
Jinja2Template,
который представляет шаблон Jinja2 -
функцию
template,
которая рендерит шаблон SimpleTemplate -
функцию
mako_view,
которая является декоратором для рендеринга Mako