To add fields to auth forms you have to use
auth.settings.extra_fields['auth_user'] = [ Field(...), Field(...) ]
On Monday, 25 May 2015 03:09:10 UTC-5, mweissen wrote:
>
> I want to have an extra field in the register form but not in the
> auth_user table.
> There has been some threads about this topic in the past.
>
> In user.html I have added:
>
> elif request.args(0)=='register':
> form[0].insert(-1, DIV(
> LABEL(T('registercode'),_class="control-label col-sm-3"),
> DIV(
> INPUT(_name='registercode', _placeholder="z.B. xs5trv",
> _class="form-control string"),
> SPAN(_class="help-block"),
> _class="col-sm-9"),
> _class="form-group"))
> pass
> =form
>
> and in db.py there is a simple validation code:
>
> def validate_registercode(form):
> print "reg", form.vars
> if form.vars.registercode!="123":
> form.errors.registercode="*** Error ***"
>
> auth.settings.register_onvalidation=[validate_registercode]
>
> This creates a nice form containing the new field "registercode". auth
> calls the validate_registercode, but form.vars does not contain the new
> field "registercode", only the fields last_name, first_name and so on.
> What is wrong?
>
> And: is there a better way to add a new field *together with its classes*?
>
> R
> egards, Martin
>
>
>
--
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 [email protected].
For more options, visit https://groups.google.com/d/optout.