可能很简单
我正在尝试禁用(即该字段存在但变灰)所有formset行上的“sub_total”字段,并使用javascript将输入“price_estimate”和“quantity”字段中的值更新该字段。在
我有以下型号:
class Requisition(models.Model):
create_date = models.DateTimeField(auto_now_add=True)
modified_date = models.DateTimeField(auto_now=True)
description = models.CharField(max_length=128, null=True, blank=True,)
total = models.DecimalField(decimal_places=2, max_digits=20, null=True)
class RequisitionLine(models.Model):
requisition = models.ForeignKey(Requisition)
product = models.CharField(max_length=50, blank=False)
quantity = models.PositiveIntegerField()
price_estimate = models.DecimalField(decimal_places=2, max_digits=20)
sub_total = models.DecimalField(decimal_places=2, max_digits=20, null=True)
@property
def get_sub_total(self):
return self.quantity * self.price_estimate
在我看来
^{pr2}$在形式上
class RequsitionForm(forms.ModelForm):
class Meta:
model = models.Requisition
fields = ['description']
class RequisitionLineForm(forms.BaseInlineFormSet):
sub_total = forms.DecimalField(disabled=True, required=False)
class Meta:
model = models.RequisitionLine
fields = ['product', 'quantity', 'price_estimate', 'sub_total']
除了上面的代码-我还试图修改init上的sub峎total字段,但是无论我尝试什么,它似乎都被忽略了。在
有什么帮助吗
正如我所怀疑的-非常基本的错误。视图应该是这样的(即不设置formset标志。在
除此之外-应该修改表单以使用ModelForm(而不是BaseInlineFormSet)
^{pr2}$相关问题 更多 >
编程相关推荐