Django choices 选择报错

有时我们会设置一个映射,如:

GENDER = (
			('0','male'),
			('1', 'female'),
			('2', 'unknown'),)
gender = models.IntegerField(choices= GENDER, verbose_name= '性别', default=2)

 这明明是为了方便自己结果 却不想成了这样:

就这样还找了半天找不到原因,等找到原因,终于明白什么是蠢哭了,关键就在这里的gender设置成了IntegerField,但是定义时却用的字符串,

GENDER = (
('0','male'),
('1', 'female'),
('2', 'unknown'),)

所以,这里只需将“0”改成成0就行了。

原文地址:https://www.cnblogs.com/Andy963/p/6413898.html