1

modelformset_factory を使用しています。

生成された各フォーム フィールドにプレースホルダー テキストを追加するにはどうすればよいですか?

たとえば、私は

AdvisorsFormSet = modelformset_factory( S_Advisors, max_num=4, extra=4, exclude=('startup', 'id'))

それから

    advisors_item_formset = AdvisorsFormSet(
        request.POST, request.FILES, prefix='advisors',
        queryset=S_Advisors.objects.filter(startup=startup))

テンプレートでフォームセット フォームをレンダリングするときに生成される各フォーム フィールドにプレースホルダー テキストを追加するにはどうすればよいですか?

ありがとう!

4

1 に答える 1

1

modelformset_factory はformキーワード引数を取ります。

したがって、ModelForm を作成する場合

class AdvisorForm( forms.ModelForm ):
  class Meta:
    model=Advisor

  def __init__( self, *args, **kwargs ):
    super( AdvisorForm, self ).__init__( *args, **kwargs )
    self.fields[ 'name' ].widget.attrs[ 'placeholder' ]="Enter name"

それを modelformset_factory に渡すことができます

AdvisorFormSet=modelformset_factory( Advisor, form=AdvisorForm )
于 2013-04-30T04:26:00.903 に答える