[Grok-dev] traject, megrok.traject released
optilude+lists at gmail.com
Mon Nov 16 09:48:09 EST 2009
Martijn Faassen wrote:
> Hi there,
> I've just released megrok.traject and traject:
> Traject is inspired by various routing systems (such as bobo) and
> megrok.trails by Brandon Rhodes. It provides a routing system for Grok.
> Traject is different from most routing-systems in some ways:
> * the route goes to a model, not a view. You just declare the views
> on the model. In this is it similar to megrok.trails.
> * the system is aware of locations (__name__ and __parent__) meaning
> that urls and security can be made to work for objects that are
> published on a traject.
> traject is a framework independent Python library, and megrok.traject
> integrates it into Grok. The idea is that you can turn your application
> root (or any other object) into a jump-off point for trajects.
> Traject is especially useful for integrating relational databases in
> Grok. It is an alternative for the megrok.rdb approach. With megrok.rdb,
> the developer is required to provide a relational database model that
> can be traversed by Grok. This slightly extends normal SQLAlchemy pattenrs.
> With traject, the developer can publish any relational database model to
> the web (or anything else) - the model itself doesn't have to know
> anything about Grok. Traject may therefore better fit a development
> model where the relational model is more separate from the applications
> that use it. SQLAlchemy can still be used (that's what I use with
> traject), but the models can be "pure" and unaware of the web.
> I believe traject is interesting as it still supports declarative
> model-driven development and all the Grok functionalities for URL
> generation and security, while fitting that into a routing approach.
This looks really cool. Do you have any feeling for whether it might
work under five.grok in Zope 2.12 too?
Author of `Professional Plone Development`, a book for developers who
want to work with Plone. See http://martinaspeli.net/plone-book
More information about the Grok-dev