我有两张桌子:
db.define_table('tests', Field('name'), Field('status'),...)
db.tests.status.requires=IS_IN_SET(['OK','obsolete'])
db.define_table('testruns', Field('name'), Field('test', db.tests), ...)
我的表格是这样的:
form = SQLFORM(db.testruns)
如何更改窗体,它只包含状态为“OK”的测试?你知道吗
Tags:
当您定义一个像
Field('test', db.tests)
这样的引用字段时,它会得到一个默认的IS_IN_DB
验证器,这个验证器在表单中为它提供了一个默认的select小部件。IS_IN_DB
验证器默认为引用字段中的所有记录,但是您可以显式指定自己的IS_IN_DB
验证器,并传入一个DAL Set对象,该对象将记录限制为一个子集(在本例中,是那些测试.状态=='好'):相关问题 更多 >
编程相关推荐