I left the default auth.create_table(migrate = setting.migrate) then added extra fields then deffined my table organization
in user profile only first name, last name and email are shown where am I going wrong? On Tuesday, December 3, 2013 11:14:45 AM UTC+1, 黄祥 wrote: > > i think you shouldn't define the auth_user table, just keep it default, > and if you want to add the new field of auth_user table, please use > extra_fields. e.g. > # append fields : auth.signature > db._common_fields.append(auth.signature) > > # custom auth user table add fields gender, address, zip_code, city, > country, phone, branch, bank, account_no > auth.settings.extra_fields['auth_user'] = [ > Field('gender', > label = T('Gender'), > notnull = True, > required = True, > requires = IS_IN_SET({T('Male'), T('Female') } ) ), > Field('address', 'text', > label = T('Address'), > notnull = True, > represent = lambda address, field: A(address, _title=T("View Maps"), > _target="_blank", _href=" > http://maps.google.com/maps?f=q&hl=en&geocode=&time=&date=&ttype=&q=%s,+%s,+%s" > > % (field.address, field.city, field.country) ), > required = True, > requires = IS_NOT_EMPTY() ), > Field('zip_code', > label = T('Zip Code'), > notnull = True, > required = True, > requires = IS_MATCH('^\d{5,5}$', error_message = 'not a Zip Code') ), > Field('city', > label = T('City'), > notnull = True, > required = True, > requires = IS_NOT_EMPTY() ), > Field('country', > label = T('Country'), > notnull = True, > required = True, > requires = IS_NOT_EMPTY() ), > Field('phone', 'list:string', > label = T('Phone'), > notnull = True, > required = True), > Field('branch', 'reference branch', > label = T('Branch'), > notnull = True, > required = True, > requires = IS_IN_DB(db, db.branch.id, '%(address)s') ), > Field('bank', 'reference bank', > label = T('Bank'), > notnull = True, > represent = lambda bank, field: A(bank.bank, _title=T("eBanking"), > _target="_blank", _href="%s" % bank.ebanking), > required = True, > requires = IS_IN_DB(db, db.bank.id, '%(bank)s') ), > Field('account_no', > label = T('Account No'), > notnull = True, > required = True, > requires = IS_NOT_EMPTY() ), > ] > > # create all tables needed by auth if not custom tables, add username field > auth.define_tables(username = True, signature = True) > > """ custom_auth_table """ > custom_auth_table = db[auth.settings.table_user_name] > # label > custom_auth_table.first_name.label = T('First Name') > custom_auth_table.last_name.label = T('Last Name') > custom_auth_table.email.label = T('Email') > # represent > custom_auth_table.email.represent = lambda email, field: \ > A(email, _title=T("Send to %s") % email, _target="_blank", > _href="mailto:%s" % email) > # requires > custom_auth_table.phone.requires = IS_NOT_IN_DB(db, > custom_auth_table.phone) > > auth.settings.table_user = custom_auth_table > > best regards, > stifan > -- 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.