Thank you David, I'll try it as soon as I finish my current round of debugging.
-Bill On Monday, August 27, 2012 2:05:24 PM UTC-5, villas wrote: > > Try this... > > Model > > db.define_table('trainer', > Field('name'), > Field('specialty'), > auth.signature, > format='%(name)s', > migrate=True, > ) > > db.define_table('dogs', > Field('name'), > Field('bites', 'boolean'), > Field('trainer', 'reference trainer'), > auth.signature, > format='%(name)s', > migrate=True, > ) > unassignedtrainers = (~db.trainer.id.belongs(db()._select(db.dogs.trainer > ))) > db.dogs.trainer.requires = IS_IN_DB(db(unassignedtrainers), 'trainer.id', > '%(name)s',zero=T('choose one')) > > if not db(db.trainer.id>0).count(): > db.trainer.insert( name="Alan", specialty="alsatians" ) > db.trainer.insert( name="Ben", specialty="blind dogs" ) > db.trainer.insert( name="Carl", specialty="corgis" ) > > if not db(db.dogs.id>0).count(): > db.dogs.insert( name="Fido", bites=False, trainer=None ) > db.dogs.insert( name="Rover", bites=True, trainer=None ) > > Controller: > > def assign_trainers(): > grid = SQLFORM.grid((db.dogs.trainer==None),user_signature=False) > return locals() > > > I think it works, but I didn't test it very much. > Rgds, David > --