Say I построить форму, используя SQLFORM.factory
так:Условные поля для SQLFORM.factory в web2py
my_fields = [Field('field1', default='some value'),
Field('field2', default = 'some other value')]
form = SQLFORM.factory(*my_fields)
Теперь я хочу, чтобы показать field2
только если field
равно какое-то значение. Однако, когда я пытаюсь сделать что-то вроде:
my_fields[1].show_if = my_fields[0] == 'some value'
(прежде чем я на самом деле сделать завод) я получаю:
File "/Applications/web2py.app/Contents/Resources/gluon/packages/dal/pydal/objects.py", line 1202, in __eq__
return Query(db, db._adapter.EQ, self, value)
AttributeError: 'NoneType' object has no attribute '_adapter'
Я думаю, что show_if
не работает, потому что это запрос, и Я на самом деле не использую таблицу ... но у меня нет таблицы, поэтому я использую SQLFORM.factory
. Любые предложения о том, как сделать поле условным в этом случае?