使用Django管理員時遇到問題。我正在構建一個小型的ScrumBoard。它有項目,狀態,故事和任務。如何將選項限制在Django中的外鍵管理員
考慮以下模型:
@python_2_unicode_compatible
class Project(models.Model):
name = models.CharField(max_length=100)
class Meta:
verbose_name = _('Project')
verbose_name_plural = _('Projects')
def __str__(self):
return self.name
@python_2_unicode_compatible
class Status(models.Model):
name = models.CharField(max_length=64) # e.g. Todo, In progress, Testing Done
project = models.ForeignKey(Project)
class Meta:
verbose_name = _('Status')
verbose_name_plural = _('Statuses')
def __str__(self):
return self.name
@python_2_unicode_compatible
class Story(models.Model):
"""Unit of work to be done for the sprint. Can consist out of smaller tasks"""
project = models.ForeignKey(Project)
name=models.CharField(max_length=200)
description=models.TextField()
status = models.ForeignKey(Status)
class Meta:
verbose_name = _('Story')
verbose_name_plural = _('Stories')
# represent a story with it's title
def __str__(self):
return self.name
的問題:當一個管理員用戶創建了一個故事,他會看到所有的項目,而不是從一個項目的狀態狀態。
這是正常的,即使你自定義您的管理,對創作,你無法猜測什麼狀態必須列出 – christophe31 2015-03-19 11:02:59
我明白這個問題:沒有辦法預先選擇項目(例如在查詢字符串或通過http post),然後顯示狀態表單的其餘部分,而無法選擇另一個項目。 – acidjunk 2015-03-19 16:27:35
通過自定義管理模型表單,您可以在創建後(修改時)使用子集。 – christophe31 2015-03-19 17:37:27