chameleon.genshi template bindings for the repoze.bfg web framework
The API for use of repoze.bfg.chameleon_genshi under BFG is identical to the one used for chameleon.zpt` templates as documented in the “Templating” chapter of the BFG docs. Only the templating language itself (Genshi vs. ZPT) and import locations (r.b.chameleon_genshi vs. r.b.chameleon_zpt) differ.
from repoze.bfg.chameleon_genshi import render_template_to_response render_template_to_response('relative/path/to/template')
relative/path/to/template is relative to the package directory in which the above code is defined.
See also the render_template and get_template APIs exposed by the repoze.bfg.chameleon_genshi package, which serve the same purpose as their brethren in repoze.bfg.chameleon_zpt.
Genshi templates can also be used as a BFG “renderer” when you use repoze.bfg.chameleon_genshi. The easiest way to allow for this is to use the following ZCML in your application’s configure.zcml:
Once your application has been set up to process this ZCML, your application can point at chameleon.genshi templates that have the .genshi file extension from within @bfg_view directives or ZCML view directives in your application. For example:
@bfg_view(renderer='templates/foo.genshi') def someview(request): ....
<view renderer="templates/foo.genshi" view=".views.someview"/>
If you’d rather not use a .genshi extension for your chameleon.genshi templates, or if you’d rather not use ZCML to do registration, you can explicitly register a renderer using the add_renderer method of a “configurator”. To do so, in the run.py of your BFG application, in the function called at startup, which uses a repoze.bfg.configuration.Configurator as config:
from repoze.bfg.chameleon_genshi import renderer_factory config.add_renderer('.cgenshi', renderer_factory)
Once you’ve registered .cgenshi as a renderer in a view configuration, you can do the following:
@bfg_view(renderer='templates/foo.cgenshi') def someview(request): ....
- Bring up to speed with BFG 1.3.X.
- Initial release (break code out of BFG core).
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size repoze.bfg.chameleon_genshi-0.2.tar.gz (6.7 kB)||File type Source||Python version None||Upload date||Hashes View|
Hashes for repoze.bfg.chameleon_genshi-0.2.tar.gz