-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Lennart Regebro wrote:
On 7/3/06, Chris McDonough <chrism@plope.com> wrote:
Actually, I think python: expressions perform slightly better than their path: counterparts because their evaluation step needs to do less work (no guessing about getitem vs. getattr). Geoff Davis taught me that. But in the end it's all dwarfed by the penalty imposed by security, so it really doesn't much matter.
Right. So the best and quickest is to prepare all the data in pure disk-based python. It's easy to do if you use the view methodology you get with Five, but there are other ways to do it if you don't want to use views.
My 'pushpage' package is an attempt to make this the "standard" pattern (pushpage templates don't have *any* top-level names available to them (i.e., 'context', 'container', 'request', etc.) except those passed to their '__call__' as keyword arguments (which traditional ZPT exposes under 'options'): http://agendaless.com/Members/tseaver/software/pushpage The templates can be used from within methods of view classes, and can also be published as "pages" via ZCML with the help of a user-defined callable which computes the keyword arguments. E.g.: <pushpage:view for=".interfaces.ISomeContentInterface" name="somepage.html" permission="zope.Public" template="templates/sometemplate.pt" mapping=".somemodule,somefunction" layer="mylayer" /> In this example, 'somemodule.somefunction' returns the mapping which 'sometemplate' will use as its top-level namespace. The callable is passed 'context' and 'request' as arguments. Tres. - -- =================================================================== Tres Seaver +1 202-558-7113 tseaver@palladion.com Palladion Software "Excellence by Design" http://palladion.com -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2.2 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFEqTxk+gerLs4ltQ4RArSWAJ90L7NT76aPuaIk9a7cQj222qYM6QCfRPrZ gN4Q7fIm63hA4HUoViIwdBk= =2aTX -----END PGP SIGNATURE-----