1
这是一个模型的一个非常简化的版本,我的工作:处理是基于其他领域的Django模型领域的要求
class ClothingTop(models.Model):
SWEATER = 0
SHIRT = 1
TOP_CHOICES = (
(SWEATER, 'Sweat shirt'),
(SHIRT, 'Shirt'),
)
name = models.CharField(max_length=32)
type = models.PositiveSmallIntegerField(choices=TOP_CHOICES)
hoodie = models.BooleanField(default=False)
buttons = models.PositiveSmallIntegerField(null=True, blank=True)
def __unicode__(self):
return self.name
@property
def type_text(self):
if self.type == self.SWEATER:
if self.hoodie:
return 'Hooded sweatshirt'
return 'Plain sweatshirt'
elif self.type == self.SHIRT:
return 'Shirt'
我想要求buttons
如果type
设置为SHIRT
。我的第一个想法是重写save
方法,但我不确定这是否是实现这一点的最明智的方法。
任何人有任何建议吗?
有了这个解决方案,我还必须为管理员应用程序提供正确的表单吗? – 2010-11-27 01:12:11