On Mon, Nov 17, 2003 at 07:34:38AM -0800, Dylan Reinhardt wrote:
On Sun, 2003-11-16 at 20:38, Brad Allen wrote:
Thanks, Paul and Dylan...but will I need a security policy if there's only one other developer that I work closely with? He works on the web pages and I work on the scripts. Eventually, we will have a security policy for one administrator who may use the Zope management interface. End users will never see the Zope management interface.
I don't follow your use of the word "magic".
Paul and I differ a bit on what we mean by magic, it seems. When you use a tag like <dtml-var my_thing> and the my_thing object gets rendered, I don't consider that magical. It's cool, to be sure... but it's pretty easy to figure out which object is resolving the name.
Normally, yes, when you acquire only by containment. The examples in the Zope book were intended to argue against constructing complex URLs to acquire objects from a different branch of the tree. When you do that, it gets ugly quickly. Otherwise, I agree with your comments. Maybe we should expand that section for the next edition. The point about objects that provide their own name resolution mechanisms is well taken. Consider CMF. Names that are not found in the folder heirarchy are looked up by the skin tool. The skin tool resolves every name you ask for by searching through its own subfolders in an order determined by the skin path property for the current skin. The results are presented in a single flattened namespace. A skin might provide a dozen or so folders in which my_thing might be located, and the structure of the skin folder hierarchy is irrelevant to the search order. When you know how it works, finding out which "my_thing" is currently in use is not difficult but it is rather tedious. I got tired of it (especially after I made a mistake and customized the wrong template) so I wrote a script to do it for me :-) -- Paul Winkler http://www.slinkp.com Look! Up in the sky! It's BURGLAR MAYOR ODD LOOKING! (random hero from isometric.spaceninja.com)