Why does user.params() not return all the params up the inheritance chain? -- It's not including the params defined in Person() -- notice Vertex() does not have a params() method.
class Element(object): def __init__(self,element_type): self.oid = None self.uuid = uuid.uuid4() self.key = None self.element_type = element_type def params(self): return dict(uuid=self.uuid, key=self.key) class Vertex(Element): def __init__(self): super(Vertex,self).__init__("vertex") class Person(Vertex): def __init__(self,name=None,uri=None,email=None): self.s = super(Person,self) self.s.__init__() self.name=name self.uri=uri self.email = email def params(self): params = dict(name=self.name,uri=self.uri,email=self.email) params.update(self.s.params()) return params class User(Person): def __init__(self, name=None, uri=None, email=None, first_name=None, last_name=None, facebook_id=None, facebook_link=None, facebook_username=None, gender=None, locale=None): self.s = super(User,self) self.s.__init__(name,uri,email) self.first_name = first_name self.last_name = last_name self.facebook_id = facebook_id self.facebook_link = facebook_link self.facebook_username = facebook_username self.gender = gender self.locale = locale def params(self): params = dict(first_name=self.first_name, last_name=self.last_name, facebook_id=self.facebook_id, facebook_link=self.facebook_link, facebook_username=self.facebook_username, gender=self.gender, locale=self.locale) print self.s.params() params.update(self.s.params()) return params _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: http://mail.python.org/mailman/listinfo/tutor