【问题标题】:django.db.utils.ProgrammingError: BLOB/TEXT column 'Thing' used in key specification without a key length - but i have no "thing" in my modeldjango.db.utils.ProgrammingError: BLOB/TEXT 列“事物”在没有密钥长度的密钥规范中使用 - 但我的模型中没有“事物”
【发布时间】: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


    【解决方案1】:

    刚刚解决了这个问题。 我之前曾将具有名为“Thing”的属性的对象保存到数据库中。 所以我删除了这些内容,Django 没有显示

    django.db.utils.ProgrammingError: BLOB/TEXT 列“事物”在没有密钥长度的密钥规范中使用

    没有了。

    【讨论】:

      猜你喜欢
      • 2012-11-22
      • 1970-01-01
      • 1970-01-01
      • 2019-01-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-22
      相关资源
      最近更新 更多