I guess the proper solution is to setup your python class mapper like this, and use the update method of the __dict__ instead of setattr.
class Recall(object): def __init__(self, **kw): self.__dict__.update(kw) pass Lucas On Thu, Nov 26, 2009 at 3:24 PM, Lukasz Szybalski <szybal...@gmail.com> wrote: > Any idea how should I be set the None Type argument to str.? > > x=Recall() > type(x.MAKETXT) is <type 'NoneType'> > > set in OrmObject when it does the setattr it probably fails because > you cannot setattr on NoneType objects? > > setattr(x.MAKETXT,'somevalue') > Traceback (most recent call last): > File "<stdin>", line 1, in <module> > TypeError: attribute name must be string, not 'NoneType' > > > What is the proper way to do this? > Thanks, > Lucas > > On Wed, Nov 25, 2009 at 10:36 PM, Lukasz Szybalski <szybal...@gmail.com> > wrote: >> http://www.sqlalchemy.org/trac/wiki/UsageRecipes/GenericOrmBaseClass >> >> class Recall(OrmObject):pass >> >> mapper(Recall,recall_table) >> >> record=Recall(RECORD_ID=RECORD_ID,CAMPNO=CAMPNO,MAKETXT=MAKETXT) >> session.add(record) >> session.flush() >> >> This is not working if using the example set in the url. Is setattr >> still working.....? What is the proper way to do this.....for SA >> 0.5.6? >> >> SQLAlchemy 0.5 Implementation: >> >> class OrmObject(object): >> >> def __init__(self, **kw): >> for key in kw: >> if not key.startswith('_') and key in self.__dict__: >> setattr(self, key, kw[key]) >> >> def __repr__(self): >> attrs = [] >> for key in self.__dict__: >> if not key.startswith('_'): >> attrs.append((key, getattr(self, key))) >> return self.__class__.__name__ + '(' + ', '.join(x[0] + '=' + >> repr(x[1]) for x in attrs) + ')' >> >> Thanks, >> Lucas >> > > > > -- > Setup CalendarServer for your company. > http://lucasmanual.com/mywiki/CalendarServer > Automotive Recall Database - See if you vehicle has a recall > http://lucasmanual.com/recall > -- Setup CalendarServer for your company. http://lucasmanual.com/mywiki/CalendarServer Automotive Recall Database - See if you vehicle has a recall http://lucasmanual.com/recall -- You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To post to this group, send email to sqlalch...@googlegroups.com. To unsubscribe from this group, send email to sqlalchemy+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/sqlalchemy?hl=en.