1
私はこのように私のCRUDフォームでカスタムウィジェットを使用しています:のweb2py:CRUDフォームカスタムウィジェット条件の表示/非表示
{{=form.custom.begin}}
{{if condition:}}
{{=form.custom.widget.field1}}
{{pass}}
{{=form.custom.submit}}
{{=form.custom.end}}
フィールド1はAUTH_USERテーブルとの関係を持っています。私のコントローラでは、私は持っています:
form.custom.widget['field1'] = dropdown
if not condition:
db.admission.field1.readable = db.admission.field1.writable = False
db.admission.field1.default = auth.user.id
条件が真であるときだけウィジェットを表示します。条件が真でない場合、field1を現在のログインユーザーにデフォルト設定します。しかし、条件が満たされない場合、エラーが発生します。
field1 error: value not in database
私は間違っていますか?その場合には、field1
は、単純に自動的にフォームから除外され、カスタムフォームを作成し、それを明示的に除く/含めて気にする必要はありません - 。フォームを作成する前にreadable
とwritable
属性を設定
これはうまくいった。再度、感謝します! – naveed