gpt4 book ai didi

python - modelformset_factory 和 csrf token 丢失或不正确

转载 作者:太空宇宙 更新时间:2023-11-03 17:39:47 26 4
gpt4 key购买 nike

我正在使用模型表单集一次添加模型的多个实例。我正在使用基于类的 View 。这是我的views.py 用于创建“库”的部分

class LibraryCreate(View):
model = Library

def post(self, request, *args, **kwargs):
LibraryFormSet = modelformset_factory(
Library, form=create_library, extra=2)
if request.method == 'POST':
formset = LibraryFormSet(request.POST, request.FILES)
if formset.is_valid():
# do something with the formset.cleaned_data
pass
else:
formset = LibraryFormSet()
return render_to_response(
'trial1/library_form.html', {'formset': formset})

def get(self, request, *args, **kwargs):
LibraryFormSet = modelformset_factory(
Library, form=create_library, extra=2)
formset = LibraryFormSet(queryset=Library.objects.none())
return render_to_response(
'trial1/library_form.html', {'formset': formset})

这是我的模板

<form method="post" action="{% url "library_create" %}">
{% csrf_token %}
{{ formset.management_form }}
<table>
{% for form in formset %}
{{ form }}
{% endfor %}
</table>
<input type="submit" value="create" />

现在,由于某种原因,当我尝试提交表单时,它会返回 403 禁止,因为“CSRF token 丢失或不正确。”。我不明白为什么这不起作用并且变得非常令人沮丧。

最佳答案

使用 render 而不是 render_to_response 以便将请求包含在模板上下文中。

return render(request, 'trial1/library_form.html', {'formset': formset})

关于python - modelformset_factory 和 csrf token 丢失或不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30739981/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com