Line
Field('comment',type='text',requires=IS_LENGTH(512,error_message=T('length
exceeds 512 characters'))
is missing a closed ),
Field('comment',type='text',requires=IS_LENGTH(512,error_message=T('length
exceeds 512 characters'))),
There may be more typos I did not catch.
On Friday, 31 August 2012 12:25:24 UTC-5, Annet wrote:
>
> I defined the following table:
>
>
> db.define_table(
> auth.settings.table_user_name,
> Field('title',length=8,requires=IS_IN_SET(['de
> heer','mevrouw'],zero=T('select a value')),label='Aanheft * '),
>
> Field('firstName',length=32,requires=IS_LENGTH(32,error_message=T('length
> exceeds 32 characters')),label='Voornaam'),
>
> Field('lastName',length=64,default='',requires=[IS_LENGTH(64,error_message=T('length
>
> exceeds 64 charactrer')),IS_NOT_EMPTY()],notnull=True,label='Achternaam *
> '),
>
> Field('shortname',default='',requires=[IS_LENGTH(128,error_message=T('length
> exceeds 128
> characters')),IS_EMPTY_OR(IS_NOT_IN_DB(db,'custom_auth_table.shortname',error_message=T('shortname
>
> already in database')))],notnull=True,unique=True),
> Field('phone',length=16,requires=IS_LENGTH(16,error_message='length
> exceeds 16 characters'),label='Telefoon'),
>
> Field('email',length=128,default='',requires=[IS_LENGTH(128,error_message=T('length
>
> exceeds 128 characters')),IS_EMAIL(error_message=T('invalid
> email')),IS_NOT_EMPTY(),IS_NOT_IN_DB(db,'custom_auth_table.email',error_message=T('email
>
> already in database'))],notnull=True,unique=True,label='E-mail * '),
>
> Field('username',length=32,default='',requires=[IS_LENGTH(32,error_message=T('length
>
> exceeds 32
> charactrer')),IS_NOT_EMPTY(),IS_NOT_IN_DB(db,'custom_auth_table.username',error_message=T('username
>
> already in
> database'))],notnull=True,unique=True,writable=False,readable=False,label='Gebruikersnaam
>
> * '),
> Field('password',
> type='password',length=512,requires=[IS_STRONG(),CRYPT()],readable=False,label='Wachtwoord
>
> * '),
> Field('nodeID','reference node',default='',requires=[IS_IN_DB(db,'
> node.id','%(id)s',zero=T('select a
> value'))],ondelete='CASCADE',notnull=True,writable=False,readable=False),
>
> Field('comment',type='text',requires=IS_LENGTH(512,error_message=T('length
> exceeds 512 characters')),
>
> Field('registration_key',length=512,default='',writable=False,readable=False),
>
> Field('reset_password_key',length=512,default='',writable=False,readable=False),
>
> Field('registration_id',length=512,default='',writable=False,readable=False),
> Field('createdOn',type='datetime',default=request.now),
>
> Field('modifiedOn',type='datetime',default=request.now,update=request.now))
>
> ## get the custom_auth_table
> custom_auth_table = db[auth.settings.table_user_name]
> ## tell auth to use custom_auth_table
> auth.settings.table_user = custom_auth_table
> ## to prevent the auth_cas table from being created
> auth.settings.cas_domains = None
>
> ## create all tables needed by auth if not custom tables
> auth.define_tables(username=True, signature=False)
>
>
> When I save the file, the 'Last saved on' field colors yellow and the line:
>
> custom_auth_table = db[auth.settings.table_user_name]
>
> ... becomes gray. When I go to 'edit application init' and click the
> 'database administration' button I get the following error:
>
> Traceback (most recent call last):
> File "/Library/Python/2.6/site-packages/web2py/gluon/restricted.py", line
> 208, in restricted
> ccode = compile2(code,layer)
> File "/Library/Python/2.6/site-packages/web2py/gluon/restricted.py", line
> 193, in compile2
> return compile(code.rstrip().replace('\r\n','\n')+'\n', layer, 'exec')
> File
> "/Library/Python/2.6/site-packages/web2py/applications/init/models/20_auth_db.py"
> <http://127.0.0.1:8000/admin/default/edit/init/models/20_auth_db.py>, line 36
> custom_auth_table = db[auth.settings.table_user_name]
> ^
> SyntaxError: invalid syntax
>
> Error snapshot [image: help]
>
> <type 'exceptions.SyntaxError'>(invalid syntax (20_auth_db.py, line 36))
>
> inspect attributes
> Frames
>
> -
>
> *File /Library/Python/2.6/site-packages/web2py/gluon/restricted.py in
> restricted at line 208* code arguments variables
> -
>
> *File /Library/Python/2.6/site-packages/web2py/gluon/restricted.py in
> compile2 at line 193* code arguments variables
> Function argument list
>
> (code="# -*- coding: utf-8
>
> -*-\n\n#######################...use_janrain(auth,filename='private/janrain.key')\n",
>
>
> layer='/Library/Python/2.6/site-packages/web2py/applications/init/models/20_auth_db.py')
> Code listing
>
> 188.
> 189.
> 190.
> 191.
> 192.
> 193.
>
> 194.
> 195.
> 196.
> 197.
>
>
> def compile2(code,layer):
> """
> The +'\n' is necessary else compile fails when code ends in a comment.
> """
> return compile(code.rstrip().replace('\r\n','\n')+'\n', layer, 'exec')
>
>
> def restricted(code, environment=None, layer='Unknown'):
> """
> runs code in environment and returns the output. if an exception occurs
>
> Variables builtincompile <built-in function compile> code "# -*-
> coding: utf-8
>
> -*-\n\n#######################...use_janrain(auth,filename='private/janrain.key')\n"
>
> code.rstrip <built-in method rstrip of str object at 0x2382800>
> ).replace undefined layer
>
> '/Library/Python/2.6/site-packages/web2py/applications/init/models/20_auth_db.py'
>
>
> I don't need to use OpenID, Facebook etc. so I commented out:
>
> ## from gluon.contrib.login_methods.rpx_account import use_janrain
> ## use_janrain(auth,filename='private/janrain.key')
>
> ... is that's what's causing the problem?
>
>
> Kind regards,
>
> Annet.
>
--