html – Django’ManagementForm数据丢失或已经被篡改’当使用外键链接保存modelForms

html – Django’ManagementForm数据丢失或已经被篡改’当使用外键链接保存modelForms,第1张

概述我对Django很新,所以这可能是一个容易的问题.我有两个modelForms,其中有一个ForeignKey到另一个.我的主要目标是将指标与疾病(FK)联系起来,使得对于特定的疾病,您可以有多个指标. 使用下面的代码,当我点击提交“管理窗体数据丢失或被篡改”时,我收到错误.此外,views.py中的代码似乎没有在第三个’if’语句中返回HttpResponseRedirect的验证.但是,当我检 我对Django很新,所以这可能是一个容易的问题.我有两个modelForms,其中有一个ForeignKey到另一个.我的主要目标是将指标与疾病(FK)联系起来,使得对于特定的疾病,您可以有多个指标.

使用下面的代码,当我点击提交“管理窗体数据丢失或被篡改”时,我收到错误.此外,vIEws.py中的代码似乎没有在第三个’if’语句中返回httpResponseRedirect的验证.但是,当我检查我的数据库时,表单中的值已写入.任何关于为什么错误提出的想法?以及如何解决?

我的代码如下:

models.py

#table for diseaseclass disease(models.Model):    disease = models.CharFIEld(max_length=300)#tables for Indicatorsclass Indicator(models.Model):    relevantdisease = models.ForeignKey(disease)           indicator = models.CharFIEld(max_length=300)

forms.py

class diseaseForm(forms.ModelForm):    class Meta:      model = diseaseclass IndicatorForm(forms.ModelForm):    class Meta:      model = IndicatordiseaseFormSet = inlineformset_factory(disease,Indicator,can_delete=False,form=diseaseForm)

vIEws.py

def drui(request):    if request.method == "POST":       indicatorForm  = IndicatorForm(request.POST)       if indicatorForm.is_valID():          new_indicator = indicatorForm.save()          diseaseInlineFormSet = diseaseFormSet(request.POST,request.fileS,instance=new_indicator)          if diseaseInlineFormSet.is_valID():             diseaseInlineFormset.save()             return httpResponseRedirect('some_url.HTML')    else:       indicatorForm = IndicatorForm()       diseaseInlineFormSet = diseaseFormSet()    return render_to_response("drui.HTML",{'indicatorForm': indicatorForm,'diseaseInlineFormSet': diseaseInlineFormSet},context_instance=RequestContext(request))

template.HTML

<form  action="{% url drui %}" method="post">{% csrf_token %}  {{ indicatorForm.as_table }} <input type="submit" name="submit" value="submit" > </form>
解决方法 您的模板中既没有diseaseFormSet也没有formFormSet的管理表单,但是您尝试实例化表单集. Formsets需要隐藏的管理表单,告诉django集合中有多少个表单.

将其插入到HTML中

{{ diseaseFormSet.as_table }} {{ diseaseFormSet.management_form }}
总结

以上是内存溢出为你收集整理的html – Django’ManagementForm数据丢失或已经被篡改’当使用外键链接保存modelForms全部内容,希望文章能够帮你解决html – Django’ManagementForm数据丢失或已经被篡改’当使用外键链接保存modelForms所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1132191.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存