我正在尝试学习一些django并尝试在数据库中插入一些值(使用模型表单),但这似乎没有引用:
django.db.utils.OperationalError: index row size 3008 exceeds maximum 2712 for index "appname_mymodel_ggg_like"
我的模型很简单,看起来像这样:
class myModel(TimeStampedModel):
fff = models.URLField(db_index=False, blank=False,primary_key=False)
ggg = models.TextField(db_index=False, blank=False,primary_key=False)
mj = models.BooleanField(db_index=False, blank=False, primary_key=False, default=False) # req field
def __unicode__(self):
return self.fff
这是否意味着字符串很长(是的,但不是1MB字符串或任何东西)?这就是我使用文本字段的原因..但这似乎没有帮助.
任何提示将不胜感激..
解决方法:
如果有人通过错误消息到达这里,对我来说这是unresolved bug.
基本上django TextField的大小可能很大,但如果我们将其设置为唯一,则唯一性检查可能会中断.
建议的“修复”使用md5哈希进行唯一性检查.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。