我的代码与ForeignKey和Form相关的模型,我尝试在一个页面中显示: 所有报价及其项目,我也想更新这些字段。
模型
class Quote(models.Model):
number = models.IntegerField(null=False)
class Quote_detail(models.Model):
quote = models.ForeignKey(Quote)
stock = models.IntegerField(null=True)
表格
class QuoteForm(forms.ModelForm):
class Meta:
model = Quote
fields = '__all__'
查看
def quotes(request):
cotiFormSet = modelformset_factory(Quote,form=QuoteForm)
if request.method == 'POST':
formSet = QuoteForm(request.POST,request.FILES)
if formSet.is_valid():
formSet.save()
return redirect('quotes')
else:
formSet = cotiFormSet()
return render(request,'supplierweb/quotes.html', {'formset':formSet})
和
模板
{% for item in form.instance.quote_detail_set.all %}
<tr>
<td>
<input for={{ item.stock }} value = {{ item.stock }} type="number" />
</td>
</tr>
{% endfor %}
但是,当我提交此页面时,字段不会更新。谢谢你的帮助!
答案 0 :(得分:0)
答案 1 :(得分:0)
我可以推荐django Girls Tutorial来实现你的表格,因为django可以为你做大部分的工作。
http://tutorial.djangogirls.org/en/django_forms/
您的template.html看起来像这样。您只需要将此模板中使用的更改为您的。
{% block content %}
<form method="POST" class="post-form">{% csrf_token %}
{{ form.as_p }}
<button type="submit" class="save btn btn-default">Save</button>
</form>
{% endblock %}