Skip to main content

Chameleon template integration for Morepath

Project description

more.chameleon: Chameleon template integration for Morepath

more.chameleon is an extension for Morepath that adds Zope Page Template (ZPT) support for the .pt extension, using the Chameleon template engine.

For details on the ZPT template language see the Chameleon language reference.

Example usage:

from more.chameleon import ChameleonApp

class App(ChameleonApp):
    pass

@App.path(path='persons/{name}')
class Person(object):
     def __init__(self, name):
         self.name = name

@App.template_directory()
def get_template_directory():
    return 'templates'

@App.html(model=Person, template='person.pt')
def person_default(self, request):
    return {'name': self.name}

and then in person.pt (in the templates subdirectory):

<html>
<body>
<p>Hello ${name}!</p>
</body>
</html>

During development it can be helpful to have Chameleon reload templates automatically after a change. To enable this feature use the MOREPATH_TEMPLATE_AUTO_RELOAD environment variable.

You can enable it for your process:

MOREPATH_TEMPLATE_AUTO_RELOAD=1 python run.py

Or for your shell:

export MOREPATH_TEMPLATE_AUTO_RELOAD=1
python run.py

To further control Chameleon rendering you can define a chameleon setting section in your app. For instance, here is how you turn on Chameleon’s debug functionality:

@App.setting_section(section='chameleon')
def get_setting_section():
    return {'debug': True}

For details on Chameleon configuration options, consult the configuration keyword arguments in the Chameleon API reference.

CHANGES

0.2 (2016-01-23)

0.1 (2015-04-09)

  • Initial public release.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

more.chameleon-0.2.tar.gz (7.4 kB view details)

Uploaded Source

Built Distribution

more.chameleon-0.2-py2.py3-none-any.whl (8.5 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file more.chameleon-0.2.tar.gz.

File metadata

File hashes

Hashes for more.chameleon-0.2.tar.gz
Algorithm Hash digest
SHA256 c09ff83687429bfa87d4e0c6b85103afad60e3804c81710068459d96824f374a
MD5 09474c439972e672779d0e6bf1725037
BLAKE2b-256 b0f905bdb876274ae2d8927b226b0e74d971962e2ff5164815ae6aae0539c4b3

See more details on using hashes here.

File details

Details for the file more.chameleon-0.2-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for more.chameleon-0.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 db29b4146a9afb9ba00b24bf46902afd5599e18482062cac069a262cdfeb8f7b
MD5 96f3206dc0b6135d69b347aaebefa51d
BLAKE2b-256 8d5a45393944eeb83acd38a3d65b993f7c6e6931b9a4309aa8b8cff3b3ee6462

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page