IS_IN_DB takes a DAL set, so you can limit the records returned. If you want 
the record ID returned, use db.setup.id. So, maybe something like this:
 
Field('setup', requires=IS_IN_DB(db(db.setup.ready==True), db.setup.id, 
'%(setupname)s'))
 
 
Anthony

On Wednesday, July 13, 2011 9:06:03 PM UTC-4, Gwayne aka Mike Veltman wrote:

> This will probably a facepalm moment but I can not figure it out. 
>
> My present used form function 
>
>     form = SQLFORM.factory(
>     Field('setup', requires=IS_IN_DB(db, db.setup.setupname, 
> '%(setupname)s')
>     ))
>     
>
> Model 
>
> db.define_table('setup', 
>
>     Field('setupname', type='string',
>           unique=True,
>           label=T('Setup name')),
>     Field('description', type='string',
>           label=T('Description')),
>     Field('frame_id', db.frame,
>           label=T('Frame ID')),
>     Field('course_id', db.course,
>           label=T('Course ID')),
>     Field('ready', type='boolean',
>           default=False,
>           label=T('Ready for use')), 
>     Field('nostorage', type='boolean',
>           default=False,
>           label=T('No storage needed')),
>     Field('noprofiles', type='boolean',
>           default=False,
>           label=T('No profiles needed')),
>     Field('nonim', type='boolean',
>           default=False,
>           label=T('No nim actions needed')),
>       Field('securitylevel', type='integer',
>           default=0,
>           label=T('Security Level')),
>     Field('created_on','datetime',default=request.now,
>           label=T('Created On'),writable=False,readable=False),
>     Field('modified_on','datetime',default=request.now,
>           label=T('Modified On'),writable=False,readable=False,
>           update=request.now),
>     format='%(setupname)s',
>     migrate=settings.migrate)   
>
> What I try to get is that the form only shows the setupname of the records 
> where setup.read==True and then returns setup.id so I can use that. 
>
> A addtional would be that the first selection is the first record and not 
> empty. 
>
> Thanks in advance. 
>
>
> With regards,
> Mike Veltman 
>
>
>     

Reply via email to