i think the error related with auth definition is not found, perhaps
because you define the employee table first and then (or not) auth
definition.
pls try :
db = DAL(lazy_tables=True)
from gluon.tools import Auth, Service, PluginManager, prettydate
auth = Auth(db, host_names = myconf.get('host.names') )
auth.define_tables(username = False, signature = True)
db.define_table('employee',
Field('fullname','string',label='Name'),
Field('email','string'),
Field('phone','string'),
Field('kids', 'string'),
Field('phone', 'string'),
#Field('date','datetime'),
Field('dob', 'datetime', label='Date'),
Field('department', 'reference department',
requires=IS_IN_DB(db, db.department.id,
'%(department_name)s')),
auth.signature,
format='%(fullname)s'
)
db = DAL(lazy_tables=True)
db.define_table('department',
Field('department_name', 'string', label='Department Name'),
# Field('department_name', 'string', label='Department Name'),
Field('manager', 'reference employee', required='true',
requires=IS_IN_DB(db, db.employee.id, '%(fullname)s')),
auth.signature,
format='%(department_name)s'
)
as you can see on the example above, you define the db first, then the
auth, after that pls proceed with another table you want to have in your
apps.
best regards,
stifan
On Tuesday, August 16, 2016 at 3:35:14 PM UTC+7, Oasis Agano wrote:
>
> *I did this *
>
> db = DAL(lazy_tables=True)
> db.define_table('employee',
> Field('fullname','string',label='Name'),
> Field('email','string'),
> Field('phone','string'),
> Field('kids', 'string'),
> Field('phone', 'string'),
> #Field('date','datetime'),
> Field('dob', 'datetime', label='Date'),
> Field('department', 'reference department',
>
> requires=IS_IN_DB(db, "department.id",
> '%(department_name)s')),
> auth.signature,
> format='%(fullname)s'
>
> )
> #db = DAL(lazy_tables=True)
> db.define_table('department',
> Field('department_name', 'string', label='Department Name'),
> # Field('department_name', 'string', label='Department Name'),
> Field('manager', 'reference employee',
> requires=IS_IN_DB(db, "employee.id", '%(fullname)s')),
> auth.signature,
> format='%(department_name)s'
> )
>
> now im getting a complete different error
>
> raise KeyError('Cannot resolve reference %s in %s definition' %
> (referenced, table._tablename))
> KeyError: 'Cannot resolve reference auth_user in employee definition'
>
>
> On Sunday, August 14, 2016 at 11:02:56 PM UTC+2, Oasis Agano wrote:
>>
>> My code is the following im trying to assign a department to employees
>> and also create a manager in a department table
>>
>> db = DAL(lazy_tables=True)
>> db.define_table('employee',
>> Field('fullname','string',label='Name'),
>> Field('email','string'),
>> Field('phone','string'),
>> Field('kids', 'string'),
>> Field('phone', 'string'),
>> #Field('date','datetime'),
>> Field('dob', 'datetime', label='Date'),
>> Field('department', 'reference department',
>> requires=IS_IN_DB(db, db.department.id,
>> '%(department_name)s')),
>> auth.signature,
>> format='%(fullname)s'
>>
>> )
>> db = DAL(lazy_tables=True)
>> db.define_table('department',
>> Field('department_name', 'string', label='Department Name'),
>> # Field('department_name', 'string', label='Department Name'),
>> Field('manager', 'reference employee', required='true',
>> requires=IS_IN_DB(db, db.employee.id, '%(fullname)s')),
>> auth.signature,
>> format='%(department_name)s'
>> )
>>
>>
--
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.