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.

Reply via email to