Maybe you can explain in more detail exactly what you are observing and what you expect instead. In general, though, you should define referenced tables before those that reference them (so move domini ahead of the other two) -- this was mentioned in the previous answer to this thread. Also, in the faxmachines table, you have a "Format" argument, which should instead be "format".
Anthony On Friday, November 6, 2015 at 8:31:26 PM UTC-5, Marvi Benedet wrote: > > Very similar problem, but with an important difference: the referencing > table is the "user" table, an extension of it actually... > So I don't know how to resolve. > by the way, the behaviour is a little randomic: it works for some fields > but not for others. > At the moment "dipartimenti" is working as expected but "faxmachines" > doesn't... > > > Here my code: > > db = DAL('mysql://user:pwd@191.168.1.2/dbname', > pool_size=myconf.take('db.pool_size', cast=int), > check_reserved=['all'],lazy_tables = True,) > > auth.settings.table_user_name = 'users' > > db.define_table('faxmachines', > Field('numero', length=14), > Field('name', length=100, requires=IS_NOT_EMPTY()), > Field('dominio', 'reference domini', writable=False, > readable=False, default=lambda:session.domain ), > Field('pin', length=8), > Field('label', length=60, requires=IS_NOT_EMPTY()), > Field('fmmail', length=50), > Field('fmenabled', 'boolean', default=True), > Field('enabled', 'boolean', default=True), > Format='%(name)s', > common_filter = lambda query: > db.fax_machines.dominio==session.domain, > #fake_migrate=True > ) > > db.define_table('dipartimenti', > Field('name', length=100, requires=IS_NOT_EMPTY()), > Field('dominio', 'reference domini', writable=False, > readable=False, default=lambda:session.domain ), > format='%(name)s', > common_filter = lambda query: > db.dipartimenti.dominio==session.domain, > #fake_migrate=True > ) > > > db.define_table('domini', > Field('name', length=100, > requires=IS_NOT_EMPTY()), > Field('provisiong_folder',length=255, > requires=IS_NOT_EMPTY()), > Field('dialstring', length= 20), > format='%(name)s', > ) > > auth.settings.extra_fields['users']= [ > Field('dominio', 'reference domini', writable=False, > readable=False, default=lambda:session.domain), > Field('faxmachine', 'reference faxmachines'), > Field('dipartimento', 'reference dipartimenti'), > Field('matricola', length= 50, requires=IS_NOT_EMPTY()), > Field('pin', length= 10 ), > Field('cellulare', length= 20 ), > Field('alternative', length= 20 ), > Field('note', length=255 ), > Field('enabled', 'boolean', default=True ), > ] > > > -- 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/d/optout.