+-

我想把录取表的值保存在录取和in_stock字段中,在填表页面中没有in_stock表
模型.py
class Admission(models.Model):
name = models.CharField(max_length=100,db_index=True)
date = models.DateTimeField()
in_stock = models.IntegerField(blank=True)
admission = models.IntegerField()
def __str__(self):
return '{}'.format(self.name)
窗体.py
class AdmissionForm(forms.ModelForm):
class Meta:
model = Admission
fields = ['date', 'name', 'admission', 'in_stock']
views.py
class AdmissionCreate(View):
def get (self, request):
form = AdmissionForm()
return render(request, 'inventory/addAdmissions.html', context={'form': form})
def post(self, request):
form = AdmissionForm(request.POST)
if form.is_valid():
form.save()
return redirect(admission_list)
0
投票
投票
如果我目前的理解是,你想提交一个表单,但有一个字段的值重复到另一个字段,即录取字段是111,保存表单后in_stock也是111。其中一个方法是在表单验证中定义一个 clean_fieldname 功能。
https:/docs.djangoproject.comen3.0refformsvalidation。
class AdmissionForm(forms.ModelForm):
class Meta:
model = Admission
fields = ['date', 'name', 'admission', 'in_stock']
def clean_in_stock(self):
return self.cleaned_data['admission']
我的一个疑问是,你是在请求... ... in_stock 在您的表单中,该字段可能是在HTML中呈现的,并在表单提交时输入一个值。您可能不希望这样做,您可以在表单的Meta中完全排除该字段。