On Dec 1, 2010, at 5:46 PM, Alvaro Reinoso wrote: > Hello, > > I have a system to manage users in my application, but I'm getting > some troubles with it. > > Every user has to belong to a group of users. One user can only be in > one group. > > I have those tables (inheriting from rdb.Model is basically the same > thing than using sqlalchemy's declarative model) > > class User(rdb.Model): > """Represents the user""" > rdb.metadata(metadata) > rdb.tablename("users") > > id = Column("id", Integer, primary_key=True) > name = Column("name", String(50)) > .... > > userGroup = relationship("UserGroup", uselist=False) > ..... > > class UserGroup(rdb.Model): > """Represents a group of users with the same features""" > rdb.metadata(metadata) > rdb.tablename("user_groups") > > id = Column("id", Integer, primary_key=True) > title = Column("title", String(50)) > > users = relationship("User", order_by="User.name", cascade="all, > delete, delete-orphan", backref="user_groups") > .... > > I have a script which migrate users from a pre-existing Zope DB > (object-oriented): > > def migrateUsers(): > """Migrate all the users to the database""" > session = rdb.Session() > rScreens = session.query(Screen).all() > rUserGroups = session.query(UserGroup).all() > ..... > > for oldUser in grok.getSite()['Users'].values(): > user = User() > ...... > for newGroup in rUserGroups: > if newGroup.title == "superadmins": > newGroup.users.append(user) > ...... > > return > > When I execute the script, the user_groups are properly created and > the users are properly added to the user_groups they should belong to, > but I get empty "group" entries in the database, and I don't know why > > I have made some tests, and I've realized that I get an empty entry > (an empty user_group) every time I try to add a user to a user_group, > but I don't know what is causing this behavior.
theres no instantiation of UserGroup indicated above so no indication of what would be creating extra "group" rows in your database. > > Any hint will be appreciated. > > -- > 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. > -- 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.