In your example: form=SQLFORM.factory(db.person,db.auth_user)
does not have a password_two field. It just is not there, hence no widget. You must add one somehow. Look how it is done in gluon/ tools.py by searching for password_two. On Feb 22, 3:46 pm, Nasko <atanas.m.atana...@gmail.com> wrote: > Hi massimo > > First thanks for your great web2py. > > I link 2 tables (user_auth and person) and create custom registration > form > > here is the controller: > > def register(): > db.person.name.readable=db.person.name.writable=False > db.person.user_id.readable=db.person.user_id.writable=False > form=SQLFORM.factory(db.person,db.auth_user) > if form.accepts(request.vars): > id = > db.auth_user.insert(**db.auth_user._filter_fields(form.vars)) > form.vars.user_id=id > form.vars.name=form.vars.first_name+' '+form.vars.last_name > id = db.person.insert(**db.person._filter_fields(form.vars)) > response.flash='Thanks for filling the form' > return dict(form=form) > > and here is the view: > > {{extend 'layout.html'}} > {{=form.custom.begin}} > <div id="register_person"> > {{=TABLE(TR('Fist name',form.custom.widget.first_name), > TR('Last name',form.custom.widget.last_name), > TR('Country',form.custom.widget.country), > TR('Email',form.custom.widget.email), > TR('Password',form.custom.widget.password), > TR('Password again',form.custom.widget.password_two))}} > {{=form.custom.submit}} > </div> > {{=form.custom.end}} > > I still get None for password_two field. > I use the latest web2py testing archive. I think the problem is in > linking the tables and not using default form auth(). > The site i'm working on has 2-3 types of users stored in different > tables and they use default auth_user table credentials (email and > pass) to login in. So i want to make 3 different "register" controlers > for every type user. > > Any suggestion is helpful? > > Thanks > > On Feb 20, 5:58 pm, Massimo Di Pierro <massimo.dipie...@gmail.com> > wrote: > > > > > > > > > fixed just now, please try it. > > > On Feb 19, 11:36 pm, pbreit <pbreitenb...@gmail.com> wrote: > > > > Did this get fixed? > > > > I have this: > > > {{=form.custom.begin}} > > > {{=form.custom.widget.email}} > > > {{=form.custom.widget.password}} > > > {{=form.custom.widget.password_two}} > > > {{=form.custom.end}} > > > > And it shows email and password fields and then the word "None".