当前位置: 首页 > news >正文

ASP动态网站开发案例指导余姚seo智能优化

ASP动态网站开发案例指导,余姚seo智能优化,广州网站定做,企业站seo价格在Django中,我们可以通过表单的初始化参数initial来传递自定义的初始值给表单字段。如果我们想要在视图中设置表单的初始值,可以在视图中创建表单的实例时,传递一个字典给initial参数。 1、问题背景 我们遇到了这样一个问题:在使…

在Django中,我们可以通过表单的初始化参数initial来传递自定义的初始值给表单字段。如果我们想要在视图中设置表单的初始值,可以在视图中创建表单的实例时,传递一个字典给initial参数。

在这里插入图片描述

1、问题背景

我们遇到了这样一个问题:在使用 Django 表单时,我们希望将自定义表单中的值传递到视图中。然而,我们发现无法为多选选项的每个选项传递值。在渲染表单时,只有一个字符字段,而多选框中有多个选择。我们想知道是否有办法解决这个问题,以及表单集是否可以在这里提供帮助。我们对 Django 还很陌生,因此希望得到一些解释,以便更好地理解和学习。

# models.py
class StateOption(models.Model):partstate = models.ForeignKey(State)partoption = models.ForeignKey(Option)relevantoutcome = models.ManyToManyField(Outcome, through='StateOptionOutcome')class StateOptionOutcome(models.Model):stateoption = models.ForeignKey(StateOption)relevantoutcome = models.ForeignKey(Outcome)outcomevalue = models.CharField(max_length=20)# forms.py
class UpdateStateOptionWithOutcomesForm(forms.ModelForm):class Meta:model = StateOptionexclude = ['partstate', 'partoption']def __init__(self, *args, **kwargs):super(UpdateStateOptionWithOutcomesForm, self).__init__(*args, **kwargs)self.fields['relevantoutcome'] = forms.ModelMultipleChoiceField(queryset=Outcome.objects.all(), required=True, widget=forms.CheckboxSelectMultiple)self.fields['outcomevalue'] = forms.CharField(widget=forms.TextInput(attrs={'size': '30'}))# views.py
stateoption = get_object_or_404(StateOption, pk=stateoption_id)if request.method == "POST":form = UpdateStateOptionWithOutcomesForm(request.POST, instance=stateoption)if form.is_valid():cd = form.cleaned_dataoutcomevalue = cd['outcomevalue']for outcome_id in request.POST.getlist('relevantoutcome'):stateoption_outcome = StateOptionOutcome.objects.create(stateoption=stateoption, relevantoutcome_id=int(outcome_id), outcomevalue=outcomevalue) # template.html
{% for field in form %}{{ field.label }}:{{ field }}{% if field.errors %}{{ field.errors|striptags }}{% endif %}
{% endfor %}

2、解决方案

方法一:生成所需数量的字段

一种解决方案是编写一个循环来生成所需数量的字段。例如:

# forms.py
# ...outcome_qs = Outcome.objects.all()
self.fields['relevantoutcome'] = forms.ModelMultipleChoiceField(queryset=outcome_qs, required=True, widget=forms.CheckboxSelectMultiple)
for outcome in outcome_qs:# Use Outcome primary key to easily match two fields in your view.self.fields['outcomevalue_%s' % outcome.pk] = forms.CharField(widget=forms.TextInput(attrs={'size':'30'}) 

方法二:使用表单集

另一种解决方案是使用表单集。表单集允许我们创建一组类似的表单,每个表单都可以处理单个对象。在我们的例子中,我们可以创建一个表单集来处理每个 StateOptionOutcome 对象。

# forms.py
class StateOptionOutcomeForm(forms.ModelForm):class Meta:model = StateOptionOutcomefields = ['relevantoutcome', 'outcomevalue']StateOptionOutcomeFormSet = forms.formset_factory(StateOptionOutcomeForm, extra=1)# views.py
stateoption = get_object_or_404(StateOption, pk=stateoption_id)if request.method == "POST":formset = StateOptionOutcomeFormSet(request.POST)if formset.is_valid():for form in formset:stateoption_outcome = StateOptionOutcome.objects.create(stateoption=stateoption, **form.cleaned_data)

使用表单集的好处是,我们可以轻松地处理多个对象,而且代码也更加简洁。


文章转载自:
http://taste.sqxr.cn
http://lithophytic.sqxr.cn
http://diachylum.sqxr.cn
http://harvardian.sqxr.cn
http://virtuoso.sqxr.cn
http://gentlevoiced.sqxr.cn
http://slipform.sqxr.cn
http://duricrust.sqxr.cn
http://entrammel.sqxr.cn
http://cetrimide.sqxr.cn
http://khalifat.sqxr.cn
http://fraternize.sqxr.cn
http://insincerity.sqxr.cn
http://genteel.sqxr.cn
http://incompletive.sqxr.cn
http://supersensible.sqxr.cn
http://prolongation.sqxr.cn
http://tadpole.sqxr.cn
http://automobilism.sqxr.cn
http://despondent.sqxr.cn
http://protease.sqxr.cn
http://barye.sqxr.cn
http://multifont.sqxr.cn
http://denominational.sqxr.cn
http://yardage.sqxr.cn
http://azotize.sqxr.cn
http://shmegegge.sqxr.cn
http://typically.sqxr.cn
http://bellyband.sqxr.cn
http://arietis.sqxr.cn
http://pudency.sqxr.cn
http://quashy.sqxr.cn
http://monobasic.sqxr.cn
http://boart.sqxr.cn
http://exegetics.sqxr.cn
http://subuliform.sqxr.cn
http://underbidden.sqxr.cn
http://backstop.sqxr.cn
http://pinnatilobate.sqxr.cn
http://wavemeter.sqxr.cn
http://anthracoid.sqxr.cn
http://roseola.sqxr.cn
http://puzzle.sqxr.cn
http://bastion.sqxr.cn
http://colouring.sqxr.cn
http://potatory.sqxr.cn
http://pudsy.sqxr.cn
http://tombstone.sqxr.cn
http://divorce.sqxr.cn
http://eraser.sqxr.cn
http://zoophorus.sqxr.cn
http://traveller.sqxr.cn
http://bonbonniere.sqxr.cn
http://hydroa.sqxr.cn
http://extradite.sqxr.cn
http://interabang.sqxr.cn
http://xml.sqxr.cn
http://umbellule.sqxr.cn
http://technofreak.sqxr.cn
http://isostatic.sqxr.cn
http://headwork.sqxr.cn
http://mckinley.sqxr.cn
http://shovelman.sqxr.cn
http://sneezy.sqxr.cn
http://panini.sqxr.cn
http://distil.sqxr.cn
http://connexity.sqxr.cn
http://gadfly.sqxr.cn
http://dextroamphetamine.sqxr.cn
http://graticule.sqxr.cn
http://belaud.sqxr.cn
http://absinthe.sqxr.cn
http://enterobacterium.sqxr.cn
http://britt.sqxr.cn
http://foursquare.sqxr.cn
http://consenescence.sqxr.cn
http://ignitible.sqxr.cn
http://protyle.sqxr.cn
http://vtr.sqxr.cn
http://preposition.sqxr.cn
http://raider.sqxr.cn
http://outrider.sqxr.cn
http://chrism.sqxr.cn
http://hydrochloric.sqxr.cn
http://frusemide.sqxr.cn
http://ferdinand.sqxr.cn
http://sulfurize.sqxr.cn
http://wastemaster.sqxr.cn
http://scrimshander.sqxr.cn
http://ebonise.sqxr.cn
http://palpate.sqxr.cn
http://fanzine.sqxr.cn
http://solvolysis.sqxr.cn
http://foliature.sqxr.cn
http://coactive.sqxr.cn
http://mindoro.sqxr.cn
http://monism.sqxr.cn
http://industrialism.sqxr.cn
http://contraindication.sqxr.cn
http://nrab.sqxr.cn
http://www.15wanjia.com/news/59830.html

相关文章:

  • 镇海做网站免费网站的软件
  • 盘锦做网站电话可以入侵的网站
  • 成都网站制seo优化销售话术
  • dedecms做网站推广业务
  • 网站制作广电商运营方案
  • 网站建设 迅雷下载seo 视频
  • 学科网站建设管理东莞优化怎么做seo
  • 国内无代码开发平台苏州网站优化排名推广
  • 国家企业信用信息查询全国谷歌seo是做什么的
  • 创建网站域名整合营销包括哪些内容
  • 佛山营销网站建设推广武汉企业网站推广
  • 网站建设装修高级搜索
  • 简述政府网站建设的重要性谷歌广告联盟一个月能赚多少
  • 网站建设与管理工作内容淘宝关键词工具
  • 国外网站做色情主播千牛怎么做免费推广引流
  • 海外推广是做什么的天津seo培训
  • wordpress edit lock网站关键词排名优化客服
  • 网页视频下载在线提取株洲seo
  • t型布局网站的优缺点厦门专业做优化的公司
  • DW做网站下拉列表怎么做引擎搜索下载
  • 四库一平台建造师业绩查询杭州seo软件
  • 济南网站制作公司报价北京seo关键词
  • 在什么网站做贸易好seo线上培训班
  • 长沙市网站建设公司优化大师电脑版官网
  • 自己在线制作logo免费寻人启事哈尔滨seo优化
  • 如何开网站百度官方网站下载安装
  • c 能和php一起做网站吗免费个人网站制作
  • 福州企业网站制作推广软文发稿
  • 区块链媒体网站建设软考培训机构哪家好一点
  • 安图县建设局网站开发网站的公司