これは私がカメレオンテンプレートにマクロをロードするために Pyramid で使用するいくつかのコードです:
@subscriber(BeforeRender)
def add_base_templates(event):
"""Define the base templates."""
main_template = get_renderer('../templates/restaurant.pt').implementation()
event.update({ 'main_template': main_template })
Pyramid なしでどうすれば同じことを達成できますか? たとえば、次のコードで:
from chameleon import PageTemplateFile
path = os.path.dirname(__file__)
lizard = PageTemplateFile(os.path.join(path, '..', 'emails', template+'.pt'))
html = lizard(**data)