3
我有Django的對象有一個選擇字段Django的模型選擇不漲價錯誤無效的選擇
class CustomFieldType(models.Model):
STRING = 'STRING'
DATE = 'DATE'
BOOLEAN = 'BOOLEAN'
NUMERIC = 'NUMERIC'
EMAIL = 'EMAIL'
TYPE_CHOICES = (
(STRING, _('String')),
(DATE, _('Date')),
(BOOLEAN, _('Boolean')),
(NUMERIC, _('Numeric')),
(EMAIL, _('Email'))
)
name = models.CharField(max_length=256)
field_type = models.CharField(choices=TYPE_CHOICES, default=STRING, max_length=10)
company = models.ForeignKey('Company')
class Meta:
unique_together = ('name', 'company')
def __unicode__(self):
return self.name
在我的Django控制檯
$> CustomFieldType.objects.create(name='custom_name',field_type='noError',company=mycompany)
<CustomFieldType: custom_name>
$> CustomFieldType.objects.get(name='custom_name').field_type
u'noError'
爲什麼Django是不會引發錯誤(ValidationError )?或者我錯過了什麼?
有什麼辦法可以強制驗證嗎? – user1631075
@ user1631075數據庫不應該驗證任何內容。數據輸入到數據庫之前,所有驗證都應該發生。如果你期望你的數據庫進行驗證,那麼你的設計是畸形的。 – Diemuzi