【发布时间】:2014-08-05 05:30:41
【问题描述】:
我想根据我的客户模型构建一个表单。
在表单中,登录用户指定收款人,输入金额并选择他想要支付的账户。
这是迄今为止的模型和形式:
class Payment(models.Model):
payee = models.ForeignKey(Customer)
amount = models.IntegerField()
accounts = models.ManyToManyField(BankAccount)
class PaymentForm(forms.ModelForm):
class Meta:
model = Customer
widgets = {
'accounts': forms.CheckboxSelectMultiple(),
}
此表单的问题在于,它会为系统中存在的每个可能的帐户生成一个复选框,无论用户是否实际使用它。可能有几十种类型的帐户,而用户可能只有 3 或 4 个。
我希望表单只为用户拥有的帐户提供复选框。
有什么办法吗?
【问题讨论】:
-
我在您的其他类似问题中回复您。 stackoverflow.com/questions/24225605/…。这里同样适用。覆盖 PaymentForm 类中的 init 方法。
标签: django forms model django-1.5