Machinery to include web resources based on request layer.
Project description
Overview
The package is able to include the following types of resources:
Cascading stylesheets (.css)
Kinetic stylesheets (.kss)
Javascript (.js)
Usage
The package operates with browser resources, registered individually or using the resource directory factory.
A simple example:
<configure xmlns="http://namespaces.zope.org/zope" xmlns:browser="http://namespaces.zope.org/browser"> <include package="z3c.resourceinclude" file="meta.zcml" /> <include package="z3c.resourceinclude" /> <browser:resource name="example.css" file="example.css" /> <browser:resourceInclude layer="zope.publisher.interfaces.browser.IDefaultBrowserLayer" include="example.css" /> </configure>
This registration means that whenever the request provides IDefaultBrowserLayer the resource named ‘example.css’ will be included on the page.
To render HTML snippets that include applicable resources, a content provider is provided, see z3c/resourceinclude/provide.py.
A convenience method is provided to require a given resource layer:
>>> from z3c.resourceinclude import provide >>> provide(IMyLayer)
Ordering
Resources will be included in the order they’re registered for inclusion; within an include-definition, order is respected only for resources of similar kind.
Merging
When not in ‘devmode’, the resource collector will automatically merge resources, giving them a filename based on the contents (sha digest).
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.