Django Rest框架使用特定的queryset预填充表单
基本上,在弹出窗口(引导)中,我希望从我的模型中获得所有指定的预填充字段 我找到了这个代码() 我的问题也是一样。 有没有办法直接从序列化程序创建表单,这样我就不必创建Django表单 我查看了HTMLFormRenderer,但DRF文档对这个问题的看法非常糟糕 谢谢 D参见。重要部分: [HTMLFormRenderer]可以做一些改进,特别是支持针对字段的错误消息传递,并直接将序列化程序呈现为html,而无需为此创建Django表单[…] 所以基本上,HTMLFormRenderer也使用Django表单。另外,您是对的,文档没有提供太多支持。更重要的是,这个渲染器似乎很快就会改变。看见引述: 请注意,HTMLFormRenderer类使用的模板以及提交给它的上下文可能会发生更改。如果需要使用此渲染器类,建议您制作该类和模板的本地副本,或者密切遵循REST framework升级的发行说明Django Rest框架使用特定的queryset预填充表单,django,django-rest-framework,Django,Django Rest Framework,基本上,在弹出窗口(引导)中,我希望从我的模型中获得所有指定的预填充字段 我找到了这个代码() 我的问题也是一样。 有没有办法直接从序列化程序创建表单,这样我就不必创建Django表单 我查看了HTMLFormRenderer,但DRF文档对这个问题的看法非常糟糕 谢谢 D参见。重要部分: [HTMLFormRenderer]可以做一些改进,特别是支持针对字段的错误消息传递,并直接将序列化程序呈现为html,而无需为此创建Django表单[…] 所以基本上,HTMLFormRenderer也使用
我知道这没有多大帮助,但现在没有比你这样做更好的方法了。谢谢你的回复。是的,我也看过文件,所以我想这是唯一的解决办法。
class CreatePerformanceForm(forms.ModelForm):
model = Performance
fields = ('field1', 'field2')
class PerformanceCreateView(ListCreateAPIView):
serializer_class = PerformanceCreateSerializer
model = Performance
template_name = 'core/perform.html'
def get(self, request, format=None):
data = {'
form': CreatePerformanceForm()
}
return Response(data)