Please open a ticket in google code. If this is a web2py but will fix asap.
On Jul 6, 11:24 pm, Luis Goncalves <lgoncal...@gmail.com> wrote: > In fact, just to make sure there wasn't something hidden in my app affecting > the behavior, > I downloaded a fresh install of web2py, > > and get the same error: > > File "/home/pierluigi/web2py/gluon/tools.py", line 1796, in register > > user = self.db(table_user[username] == > form.vars[username]).select().first() > KeyError: 'email' > > Adding just this code to the 'welcome' app: > > def user(): > if request.args(0)=='register': > > auth.settings.table_user.email.default = 'l...@vision.caltech.edu' > > auth.settings.table_user.email.writable=False > > auth.settings.registration_requires_verification = False > > return dict(form=auth()) > > L. > > > > > > > > On Wed, Jul 6, 2011 at 8:35 PM, Luis Goncalves <lgoncal...@gmail.com> wrote: > > Yes, when I click on the invite and go to the website I get the > > registration form filled out with email (and name (excluded from my > > shortened example)) visible and non-editable. > > > Luis. > > > —«sent by mobile»— > > On Jul 6, 2011 8:17 PM, "Massimo Di Pierro" <massimo.dipie...@gmail.com> > > wrote: > > > Are you sure your db.registrant has an email? > > > > On Jul 6, 10:04 pm, Luis Goncalves <lgoncal...@gmail.com> wrote: > > >> I still get the same error: > > > >> File "/home/ubuntu/web2py/gluon/tools.py", line 1683, in register > > >> user = self.db(table_user[username] == > > form.vars[username]).select().first() > > >> KeyError: 'email' > > > >> I don't know if it makes a difference or not, but I'm using emails for > > login > > >> (not a username) -- as is probably clear to you from the above error. > > > >> Code is now: > > > >> def user(): > > > >> if request.args(0)=='register': > > > >> registrant = db( db.registrant.token == request.vars.token > > >> ).select().first() > > > >> auth.settings.table_user.email.default = registrant.email > > >> auth.settings.table_user.email.writable=False > > > >> auth.settings.registration_requires_verification = False > > > >> return dict(form=auth())