こんにちはStackoverflowの人々、
シャキッとしたアプリでフォームセットをスタイリングしたいのですが、少し悲しみがあります。
非常に単純なモデルを4回提示する必要があります。
class ItemPicture(models.Model):
item = models.ForeignKey('Item')
picture = ThumbnailerImageField(_('Image'),
upload_to='pictures/', null=True, blank=True,)
フォームクラスも簡単です。
class ItemPictureForm(forms.ModelForm):
class Meta:
model = ItemPicture
fields = ('picture',)
def __init__(self, *args, **kwargs):
self.helper = FormHelper()
self.helper.form_tag = False
self.helper.layout = Layout(
Fieldset(_('Add pictures'),'picture', ),
ButtonHolder(
Submit('save', _('Add'), css_class='btn btn-primary '),
Reset('reset', _('Cancel'), css_class='btn')))
super(ItemPictureForm, self).__init__(*args, **kwargs)
私のviews.pyで、フォームセットを生成します。
class ItemUploadPictures(FormView):
ItemPictureFormSet = formset_factory(ItemPictureForm, extra=4)
form_class = ItemPictureFormSet
template_name = 'item_upload_pictures.html'
success_url = reverse_lazy('dashboard')
私の問題は、クリスピーがテンプレートに期待{% crispy formset formset.form.helper %}
していることですが、渡された変数はであるようですform
。
{% crispy form %}
動作しますが、ヘルパー属性は表示されません。フォームセット情報全体をテンプレートに渡すにはどうすればよいですか?
ご提案ありがとうございます。