【发布时间】:2019-02-13 14:04:02
【问题描述】:
我将 django 与 mysql 数据库连接,我检查了 db 并将结果保存到 models.py 中
然后我从 anaconda 提示符运行
python manage.py migrate
但是我得到了一些错误。其中之一是
django.db.utils.ProgrammingError: BLOB/TEXT 列“事物”在没有密钥长度的密钥规范中使用
我检查了我的模型,但我没有任何“事物”对象,只有“事物”,即我以这种方式定义的表和属性:
class Things(models.Model):
id_things = models.FloatField(db_column='ID_Things', blank=True, null=True) # Field name made lowercase.
things = models.CharField(db_column='Things', blank=True, null=True, max_length=256) # Field name made lowercase.
id_db = models.FloatField(db_column='ID_db', primary_key=True) # Field name made lowercase.
class Meta:
managed = False
db_table = 'things'
所以我已经阅读了这个帖子 MySQL error: key specification without a key length
当我们将属性定义为作为主键的文本字段或 blob 字段时,是否会弹出错误,但在我的模型中,“事物”不是主键...... 有什么问题?
【问题讨论】:
标签: django-models strip nonetype mysql-connector-python