【发布时间】:2018-04-06 14:16:24
【问题描述】:
我正在使用我的模型运行 python manage.py migrate,数据库已经创建,我现在只是为它制作模型, 但是运行命令时出现此错误
TypeError: Error when calling the metaclass bases
sequence item 4: expected string or Unicode, int found
我的模型
class Publisher(models.Model):
publisherCode = models.CharField(3,primary_key=True)
publisherName = models.CharField(25)
city = models.CharField(20)
class Book(models.Model):
bookCode = models.CharField(4,primary_key=True)
title = models.CharField(40)
publisherCode = models.ForeignKey(Publisher)
type = models.CharField(3)
paperback = models.CharField(1)
class Branch(models.Model):
branchNum = models.DecimalField(2,0,primary_key=True)
branchName = models.CharField(50)
branchLocation = models.CharField(50)
class Copy(models.Model):
bookCode = models.ForeignKey(Book)
branchNum = models.ForeignKey(Branch)
copyNum = models.DecimalField(2,0,primary_key=True)
quality = models.CharField(20)
price = models.DecimalField(8,2)
【问题讨论】:
-
如果您将
CharField(..)s 改为CharField(max_length=...)会怎样?根据源码,它不是__init__docs.djangoproject.com/en/2.0/_modules/django/db/models/fields/…的显式(!)参数