Django管理员,内联填充字段

时间:2009-09-03 18:25:25

标签: django django-models django-admin django-forms

我想做点什么。

我有4节课:

class delivery(models.Model):          
      name= models.CharField(max_length=100)
      date_join= models.DateField()
      ....

class Town(models.Model):
      delivery_guy = models.ForeignKey(delivery)
      name = models.CharField(max_length=100)
      ....

class message(models.Model):
      title= models.CharField(max_length=100)
      notes = models.CharField(max_length=200)
      date= models.DateField()
      ....

class childs_of_message(models.Model):
      message =models.ForeignKey(message)
      delivery_guy = models.ForeignKey(delivery)
      direction = models.ForeignKey(delivery)
      people_name= models.CharField(max_length=100)
      date= models.DateField()
      ....

我不知道这有多恶意,我的英语很差,Town有一个delivery_guy,Message有一个Town,而Childs_of_message有一条消息并且有一个Delivery。

在Inlines模式中我显示消息如“parent”和Childs_of_message如“child - inlines-”,在我的childs_of_message中,我想在select_guys中选择显示来自Town的默认投递人(如果城镇有交付ill显示在childs_of_message内联模式的SELECT表单中选择此传递)

我的内联表单admin中的make和ModelChoiceField(queryset ....)有多糟糕?

谢谢:)

1 个答案:

答案 0 :(得分:0)

由于django中的管理界面仅适用于受信任的用户,因此我不确定您是否能够更改modelchoicefield的查询集。它总是会显示所有适用的模型对象。

您要做的是使用django表单构建自己的界面。然后,您可以根据表单初始化时的其他信息为表单字段使用initial。