django manytoone另一面

时间:2013-04-22 19:14:34

标签: django django-models django-forms

我有一个django webapp。我有这样的设置:

class Doc(models.Model)
      invoice = models.ForeignKey(Invoice, null=True, on_delete=models.SET_NULL, blank=True)

class Invoice(models.Model)
      #bla bla bla 

我可以以某种方式创建一个代表invoice.doc_set.all()的表单元素吗?我希望它是我想要它是一个多选元素。我知道我不想要Inline formsets。我希望在发票方面的django admin中看到 - > simple多个select元素,包含可以选择的所有实例。选择并保存后,特定发票将成为他们的外键实例...

1 个答案:

答案 0 :(得分:1)

您可以使用ModelMultipleChoiceField。

https://docs.djangoproject.com/en/dev/ref/forms/fields/#modelmultiplechoicefield

但我不认为管理员可以开箱即用地管理这种类型的功能。您可能需要扩展管理表单并自行设置FK。