フォームのフィールド レンダリングについて質問があります。私はこのコードを持っています:
class RTForm(forms.ModelForm):
type_options = {
'error': {
'label': _('Error'),
},
'warning': {
'label': _('Warning'),
},
'off': {
'label': _('Disable'),
}
}
choice_type = forms.ChoiceField(
choices=[(k, v['label']) for k, v in type_options.items()],
required=True, widget=forms.RadioSelect(
attrs={
class="choices"
}
)
)
class Meta:
model = RT
def __init__(self, *args, **kwargs):
self.rt = kwargs.pop('instance', None)
errors = create_error_list(rt.type)
warnings = create_warning_list(rt.type)
super(RTV, self).__init__(*args, **kwargs)
私がやりたいことは、init内のリストに返されるエラー/警告の数と同じ数のchoice_typeフィールドをテンプレートに持つことです(毎回異なる数)。それは可能ですか?考えられる解決策がわかりません。