python - ManagementForm 数据在 django 中丢失或被篡改
问题描述
我在我的 django 应用程序中使用以下代码,该代码运行良好,但在尝试保存表单时出现此错误:
['ManagementForm 数据丢失或被篡改']
意见:
def employedit(request, pk, id):
employ_academic_forms = EmployAcademicUpdateFormSet(queryset=EmployAcademicInfo.objects.filter(employ_id=pk))
if request.method == 'POST':
employ_academic_forms = EmployAcademicUpdateFormSet(request.POST)
if employ_academic_forms.is_valid():
employ_academic_forms.save()
return redirect('employ-list')
context = {
'employ_academic_forms':employ_academic_forms,
}
return render(request, 'admins/employ/edit_employ.html', context)
形式:
EmployAcademicUpdateFormSet = modelformset_factory(
EmployAcademicInfo,
exclude = ['employ_id'],
extra=0,
labels = {
'degree': 'Enter Employ Degree',
'last_passing_institution_name': 'Enter Employ Passing Institution',
'last_passing_year': 'Enter Employ Passing Year',
},
widgets = {
'degree' : forms.Select(attrs={'class':'form-control form-control-lg', 'placeholder':'Enter degree'}),
'last_passing_institution_name' : forms.TextInput(attrs={'class':'form-control form-control-lg', 'placeholder':'Enter institution name'}),
'last_passing_year' : forms.DateInput(attrs={'class':'form-control form-control-lg', 'type':'date'}),
},
)
html:
{% extends 'base/base.html' %}
{% load static %}
{% load crispy_forms_tags %}
{% block content %}
<div class="card">
<form class="form-horizontal" action="" method="post">
{% csrf_token %}
<div class="card-body">
<div class="card-body">
<div class="form-horizontal">
{{ employAcademicFormSet.management_form }}
{% for form in employ_academic_forms %}
{% for field in form.visible_fields %}
<div class="form-group row">
<label class="col-md-3 col-form-label" for="text-input"><h6>{{ field.label_tag }}</h6></label>
<div class="col-md-9">{{ field }}</div>
</div>
{% endfor %}
{% endfor %}
</div>
</div>
</div>
<div class="card-footer">
<button class="btn btn-lg btn-primary" type="submit">Submit</button>
</div>
</form>
</div>
{% endblock %}
有谁知道是什么原因造成的?请帮我!!!
解决方案
我认为您在调用时可能使用了错误的名称management_form
。
你可以尝试更换
{{ employAcademicFormSet.management_form }}
和
{{ employ_academic_forms.management_form }}
看看是否有帮助。
推荐阅读
- regex - MongoDB“查找”-如何查询包含字符串、不区分大小写和区分变音符号的字段的文档?
- spring-batch - Spring Batch 远程分区:stepexecution 处理程序的序列化问题
- javascript - React Native 清除间隔不停止间隔
- regex - 在多个 HTML 文件中查找和替换变量
- react-native - 将下拉箭头添加到 react-native-modal-selector
- python - 如何将数组保存为图像
- laravel - vue.js nuxt.js 如何在axios中调用多个api url调用
- python - 使用 ajax 更改 models.integerfield()
- python - 如何将列表转换为字典,其中第一个列表是键,第二个列表是字典中的值?
- mathematical-optimization - 如何获得 CPLEX MIP 差距?