|
5鱼币
本帖最后由 tengke 于 2023-4-13 18:09 编辑
报错是这个Model app.Usero can't have more than one auto-generated field.
我想保留这个需要怎么做呢
xb=(
(1,"男"),
(2,"女"))
gen= models.SmallAutoField(verbose_name="xb" ,choices="xb")
这个错误是因为在Django中,每个模型只允许有一个自动生成的主键。
SmallAutoField是一个自动生成的整数字段,所以当你在同一个模型中使用多个SmallAutoField时,就会出现这个错误。
如果你想保留性别字段并使用选项,你可以使用IntegerField代替SmallAutoField。
这里是修改后的代码:
- class Usero(models.Model):
- GENDER_CHOICES = (
- (1, "男"),
- (2, "女"),
- )
- gen = models.IntegerField(verbose_name="性别", choices=GENDER_CHOICES)
复制代码
这样,gen字段将成为一个普通的整数字段,可以存储性别选项。当你在创建或更新Usero对象时,可以使用GENDER_CHOICES中定义的整数值来设置性别。
|
最佳答案
查看完整内容
这个错误是因为在Django中,每个模型只允许有一个自动生成的主键。
SmallAutoField是一个自动生成的整数字段,所以当你在同一个模型中使用多个SmallAutoField时,就会出现这个错误。
如果你想保留性别字段并使用选项,你可以使用IntegerField代替SmallAutoField。
这里是修改后的代码:
这样,gen字段将成为一个普通的整数字段,可以存储性别选项。当你在创建或更新Usero对象时,可以使用GENDER_CHOICES中定义的整 ...
|