[Zope] Tricky (I think!) external method question...
Paul Winkler
slinkp23@yahoo.com
Tue, 30 Oct 2001 14:31:56 -0500
On Tue, Oct 30, 2001 at 02:14:59PM -0500, Steven Sartorius wrote:
(snip)
> import MyClass
> class MySubClass(MyClass.MyClass):
> def __init__(self,a,b,c):
> """Do some initialization that differs from MyClass"""
> return d
That's your problem right there. This is not a Zope problem - python
won't let you do that. You can't get a return value from __init__().
Try something similar at the python prompt:
$ python
Python 2.1.1 (#3, Oct 15 2001, 23:37:14)
[GCC 2.96 20000731 (Red Hat Linux 7.0)] on linux2
Type "copyright", "credits" or "license" for more information.
>>> class Foo:
... def __init__(self):
... return 1
...
>>> c = Foo()
Traceback (most recent call last):
File "<stdin>", line 1, in ?
TypeError: __init__() should return None
I tried it with python 1.5.2, same result.
--
paul winkler
home: http://www.slinkp.com
music: http://www.reacharms.com
calendars: http://www.calendargalaxy.com
>
>
> The External Method above dies when it tries to create 'd'. The traceback I
> get from Zope says:
>
> Error Type: TypeError
> Error Value: __init__() should return None
>
> I'm stumped by this. I think there is some sort of namespace confusion
> going on but I'm not sure. If anyone can shed any light on this (and save
> some of my hair!) I'd appreciate it.