I use like this: http://web2pyslices.com/main/slices/take_slice/133
_____________________________________________
*Gilson Filho*
*Web Developer
http://gilsondev.com*



2011/5/24 Ross Peoples <[email protected]>

> I am trying to make a user editor and running into trouble. I have the
> standard auth_user table, and I also have an auth_user_extended table that
> stores a bunch of other information, using auth_user as the reference
> between the two tables. I set my controller up like this:
>
> def update():
>     id = request.vars.id or request.args(0) or error()
>     row = db((db.auth_user.id==db.auth_user_extended.id) & (
> db.auth_user.id==id)).select().first()
>         if row is None:
>             error()
>
>     form = SQLFORM.factory(db.auth_user, db.auth_user_extended
>         hidden: {'id': id}
>     )
>
>     form.vars.id = id
>     form.vars.auth_user = id
>     form.vars.username = row.auth_user.username
>     form.vars.first_name = row.auth_user.first_name
>     ... etc ...
>
>     if form.accepts(request.vars, session, keepvalues=True):
>         # do the database update manually
>
> However, my problem is that when submitting the form for an update, it
> fails validation on username because "value already in database". Am I doing
> something wrong or does SQLFORM.factory not support updates? Thanks.
>

Reply via email to