7
私が答えを得ることができないdjango-crispy-formsで作業しているときに、私は質問を見つけました。 私はかなり複雑なフォームレイアウトを持っています。Django crispy-forms、BaseGenericInlineFormSet&allow_delete
フォームの一部は、汎用のインラインフォームセットを使用します。
class BaseReleaseReleationFormSet(BaseGenericInlineFormSet):
def __init__(self, *args, **kwargs):
self.instance = kwargs['instance']
super(BaseReleaseReleationFormSet, self).__init__(*args, **kwargs)
self.helper = FormHelper()
self.helper.form_id = "id_relation_form"
self.helper.form_class = 'form-horizontal'
self.helper.form_method = 'post'
self.helper.form_action = ''
self.helper.form_tag = False
base_layout = Row(
Column(
Field('name', css_class='input-small'),
#Field('delete', css_class='input-small'),
css_class='span3'
),
Column(
Field('url', css_class='input-xlarge'),
css_class='span4'
),
css_class='row relation-row',
)
self.helper.add_layout(base_layout)
:対応するコードは次のようになります
これは、うまく機能しているが、私の問題は、私は(can_delete = Trueのを持つ場合)、削除、チェックボックスにアクセスする方法を見つけ出すことができないこと、です名前とURLフィールドは必要に応じてクリスピーフォームで表示されますが、フォームの最後に削除チェックボックスが表示されます。レイアウトではアクセスできません。
誰かがこの問題に対処する方法を知っていますか?任意のヒント?前もって感謝します!
記録のために:あなたはいつも 'self.helper.render_unmentioned_fields = True'を実行することができ、そしてすべての"隠された "フィールドもレンダリングされます。次に、名前が何であるかを確認してレイアウトに明示的に含めることができます。 –