repoze.bfg.chameleon_genshi
Bindings for Chameleon Genshi-style templating support under repoze.bfg. See the Chameleon website for chameleon.genshi templating language details.
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.
An example:
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:
<include package="repoze.bfg.chameleon_genshi"/>
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):
....
Or:
<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):
....
Misc
By default, Chameleon’s Genshi XIncludes support cannot resolve repoze.bfg “resource specifications” (e.g. my_package:foo/bar.genshi). In order to activate an XIncludes class that understands repoze.bfg resource specifications, call the repoze.bfg.chameleon_genshi.XIncludes.activate method before using any templates (e.g., at process startup time):
from repoze.bfg.chameleon_genshi import XIncludes XIncludes.activate()
This will replace the XIncludes helper class for all consumers of Chameleon in the process.
repoze.bfg.chameleon_genshi
0.3 (2010-07-09)
By default, Chameleon’s Genshi XIncludes support cannot resolve repoze.bfg “resource specifications” (e.g. my_package:foo/bar.genshi). In order to activate an XIncludes class that understands repoze.bfg resource specifications, call the repoze.bfg.chameleon_genshi.XIncludes.activate method before using any templates (e.g., at process startup time):
from repoze.bfg.chameleon_genshi import XIncludes XIncludes.activate()
This will replace the XIncludes helper class for all consumers of Chameleon in the process.
Depend on Chameleon >= 1.2.8 (replaceable XIncludes class).
0.2 (2010-06-15)
Bring up to speed with BFG 1.3.X.
0.1 (2009-05-02)
Initial release (break code out of BFG core).
Release files for repoze.bfg.chameleon_genshi 0.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| repoze.bfg.chameleon_genshi-0.3.tar.gz | 8.1 kB | Details |
Release files / repoze.bfg.chameleon_genshi-0.3.tar.gz
| Download URL | repoze.bfg.chameleon_genshi-0.3.tar.gz |
|---|---|
| Size | 8.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e0eaf94f317e805b36af7aa65ff90756669fd09979ed2206e03930a464231c38
|
|
BLAKE2b-256 checksum How to use checksums |
ba72d6fba082896a351654864221481956db83f85c54927ad908657994bb495f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |