[Zope] Finding an object in a folder
Chris Withers
chris at simplistix.co.uk
Wed May 25 16:03:13 EDT 2005
Dieter Maurer wrote:
> By the way, it is as nasty in Python as it is in DTML.
I agree with we disagree, I hopethat doesn't cause offence ;-)
>>Worse still, you use hasattr with ZODB... hastattr swallows all
>>exceptions, including ConflictErrors, and especially in this example
>>that would be a bad thing...
>
> Again, the correct way to approach this problem is not
> to ban "hasattr" from thousands of places
> but to monkey patch "__builtin__.hasattr"
> such that it behaves in a Zope compatible way.
It doesn't matter what is correct and what isn't correct here, you're
handing out advice that will break when a person tries it and they least
expect it to break. That's not a nice thing to do...
> I strongly argue against it. Fix "hasattr" in the Zope context,
> instead!
Make it so! :-)
>>if getattr(thefolder.aq_inner.aq_explicit,the_id,None):
>
> You are aware that this is in general *NOT* an emulation
> of "hasattr".
I didn't say it was ;-)
> It may fail e.g. for properties.
How would it fail for properties?
> And it would be so easy to fix "hasattr" ;-)
then why haven't you done it? ;-)
Chris
--
Simplistix - Content Management, Zope & Python Consulting
- http://www.simplistix.co.uk
More information about the Zope
mailing list