Hello All,
I have these two tables
db.auth_user - which is the default table created for Auth
email, password, first name, last name

db.b
b0, b1, b2, b3

db.b.b0 foreign-key linked to db.auth_user.id 

My requirement: Display only fields first name, last name, b2, b3. Updates 
can only happen to these fields, and no other. I do not want the password, 
or email fields to be displayed, because I want to use the default change 
password form to change passwords. 

I experimented with
    form = SQLFORM.factory(db.auth_user, db.b)
    if form.process().accepted:
        id = db.auth_user.insert(**db.auth_user._filter_fields(form.vars)) # 
this needs to be corrected to accept only first and last names.
        form.vars.b = id
        id = db.b.insert(**db.b._filter_fields(form.vars))


Wasn't sure how to explicitly restrict writes to certain fields, only for 
this form. It is possible that these fields need to be updated from a 
different form.
I had a look at this discussion on the forum, and it helped me understand 
this a bit better, but not sure it helps my case: 
https://groups.google.com/forum/#!topic/web2py/qd6blGfnVTA
Also, factory seems to create a SQLFORM which does not work with the 
database(?). So, am not sure how to proceed on this one. 

________________________________________
Kiran Subbaraman
http://subbaraman.wordpress.com/about/



-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to