我正在尝试将Django1.8表单中的自定义字段渲染器迁移到Django3.2。
表单如下所示:
class SomeEditForm(forms.ModelForm):
job_uuid=forms.CharField(widget=forms.HiddenInput())
class Meta:
model=Job
fields=('status',)
widgets={'status': forms.RadioSelect(renderer=BSRadioFieldRenderer)}
因此,似乎不再有Rendermixin在其definit()中接受渲染器。我已经阅读了新的源代码,看到RadioSelect现在是ChoiceWidget的子类。我无法将旧的渲染器注入新的结构中。
谁能给我指个方向吗?
谢谢你的帮助!:)
1条答案
按热度按时间7kqas0il1#
似乎有一个hacky的工作方式...只是子类形式.RadioSelect和接受渲染器kwarg像这样:
请注意,这些类被截断了,我在这里只写了与我遇到的问题相关的部分。