Skip to main content

An add-on for the repoze.bfg web framework which supplies a model graph traverser which proxies location-ignorant model objects

Project description

repoze.bfg.traversalwrapper

An alternate implementation of the repoze.bfg.interfaces.ITraverserFactory (a “traverser”) which wraps each traversed object in a proxy. This allows a “location-ignorant” model (a model which does not possess intrinsic __name__ and __parent__ attributes) to be used as the root object and as any object returned from any other model’s __getitem__ method during traversal.

When this ITraverserFactory is registered as the traverser for a repoze.bfg application, during traversal, each object, including the root object is wrapped in a proxy. The proxy that provides the traversed object with a __name__ and __parent__ attribute. The __name__ and __parent__ attributes of the root proxy are both None. The __name__ of subsequently traversed object is the Unicode URL segment name which was used to look it up. The __parent__ of subsequently traversed objects is the previous object traversed.

In order to enable this package’s ITraverserFactory, register the repoze.bfg.traversalwrapper.ModelGraphTraverser as the traversal policy, rather than the default ModelGraphTraverser. To use this feature, your application will need to have a dependency on this package, as well as following stanza in its configure.zcml:

<adapter
    factory="repoze.bfg.traversalwrapper.ModelGraphTraverser"
    provides="repoze.bfg.interfaces.ITraverserFactory"
    for="*"
    />

repoze.bfg.traversalwrapper Changelog

0.3 (2009-06-22)

  • Compatibility with BFG 1.0a1. This version is not guaranteed to be compatible with any BFG version before 1.0a1.

0.2 (2008-05-18)

  • Use dictionary return values from our ITraverser in lockstep with changes to 0.8dev.

0.1

  • Initial release (functionality moved out of BFG core).

Project details


Release history Release notifications | RSS feed

This version

0.3

Download files

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

Source Distribution

repoze.bfg.traversalwrapper-0.3.tar.gz (11.1 kB view hashes)

Uploaded Source

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