[Zope-dev] Re: ZPatterns: __getitem__ on a DataSkin instance
Steve Spicklemire
steve@spvi.com
Fri, 5 Jan 2001 16:37:29 -0500 (EST)
Hi Steve,
Hmm.. is the 'id' of your PythonScript also getattr?
thanks,
-steve
>>>>> "Steve" == Steve Alexander <steve@cat-box.net> writes:
Steve> Steve Alexander wrote:
>> Let's say I have a DataSkin-derived ZClass that has the
>> attribute "forename" (in a dataskin attribute propertysheet).
>>
>> If I get an instance of this ZClass from the ZODB (set up to
>> use a Folder w/ customizer suppport), I can refer to the
>> "forename" attribute using <dtml-var "this()['forename']">.
>>
>> However, if I get an instance of the same class from a
>> Specialist, <dtml-var "this()['forename']"> gives me
>>
>> Error Type: AttributeError Error Value: __getitem__
>>
>> Any idea why there's the difference?
>>
>> Can the latter case be fixed?
Steve> A workaround, using the ever-flexible skinscript:
Steve> I've defined __getitem__ through skinscript and a
Steve> PythonScript.
Steve> SkinScript: WITH SELF COMPUTE __getitem__=getattr
Steve> PythonScript: parameter list: index
Steve> return getattr(index)
Steve> -- Steve Alexander Software Engineer Cat-Box limited
Steve> http://www.cat-box.net
Steve> _______________________________________________ Zope-Dev
Steve> maillist - Zope-Dev@zope.org
Steve> http://lists.zope.org/mailman/listinfo/zope-dev ** No cross
Steve> posts or HTML encoding! ** (Related lists -
Steve> http://lists.zope.org/mailman/listinfo/zope-announce
Steve> http://lists.zope.org/mailman/listinfo/zope )