【发布时间】:2009-09-10 19:31:06
【问题描述】:
我有一个这样的模型:
CAMPAIGN_TYPES = (
('email','Email'),
('display','Display'),
('search','Search'),
)
class Campaign(models.Model):
name = models.CharField(max_length=255)
type = models.CharField(max_length=30,choices=CAMPAIGN_TYPES,default='display')
还有一个表格:
class CampaignForm(ModelForm):
class Meta:
model = Campaign
有没有办法限制“类型”字段的可用选项?我知道我可以对单个值字段执行此操作:CampaignForm(initial={'name':'Default Name'}),但我找不到任何方法来为选择集执行此操作。
【问题讨论】:
-
您可能需要更改字段名称,因为“type”是 Python 中的保留关键字。
-
另外,您是否有任何理由不将广告系列类型设为 ChoiceField 而不是 CharField?
-
Campaign 是一个模型,所以 ChoiceField 不是一个选项。
标签: django django-forms