You need to change the order
db.define_table('person',
Field('name',readable=False),
Field('company',db.company,label='Firma',readable=False),
Field('role',label='Rolle',readable=False),
)
db.define_table('company',
Field('name', readable=False),
)
db.define_table('document',
Field('name'),
Field('file','upload'),
Field('filename','string',writable=False,label='Dateiname'),
Field('person',db.person),
)
db.document.person.requires=IS_EMPTY_OR(IS_IN_DB(db,'person.id', '%
(name)s %(company)s'))
On Mar 10, 5:20 am, Norbert Klamann <[email protected]>
wrote:
> Hello all,
> I want to shoe in the select list a field from another table and don't know
> how to do it.
>
> I want to show a select list for persons with their name and the name of the
> company to which they belong
>
> Consider the following model
> db.define_table('document',
> Field('name'),
> Field('file','upload'),
> Field('filename','string',writable=False,label='Dateiname'),
> Field('person',db.person),
> )
>
> db.document.person.requires=IS_EMPTY_OR(IS_IN_DB(db,'person.id', '%(name)s
> %(company)s')) ###### here i can only show the number !
>
> db.define_table('person',
> Field('name',readable=False),
> Field('company',db.company,label='Firma',readable=False),
> Field('role',label='Rolle',readable=False),
> )
> db.define_table('company',
> Field('name', readable=False),
> )
>
> Thanks a lot
>
> Norbert