本博客包含多个文档和书籍的翻译,但有能力者推荐阅读英文原版

Django 3常见问题

Python Alan 3周前 (02-03) 237次浏览 0个评论

1、’staticfiles’ is not a registered tag library

Django 在2.1中即淘汰了{% load staticfiles %} 和 {% load admin_static %},并在3.0版本中直接进行了删除,因此需进行如下操作

2、xxx doesn’t declare an explicit app_label and isn’t in an application in INSTALLED_APPS

一种可能是直接没有放入配置文件中的INSTALLED_APPS中,直接添加即可;

另外很多人可能也会把所有应用放到 apps 目录中,并在配置文件中添加如下配置:

此时在导入对应的模型时就不需在前面再添加 apps 了,使用 PyCharm 的朋友建议对 apps 目录执行右击>Mark Directory as > Source Root

3、xxx: (fields.E305) Reverse query name for ‘xxx’ clashes with reverse query name for ‘xxx’

这通常发生在继承了抽象模型的情况下,即对Model 进行了如下定义:

而如果在抽象模型中使用的硬编码的 related_name就会出现这一问题,解决方法是可以添加%(app_label)s、%(class)s,如:

4、django.db.utils.OperationalError: (1193, “Unknown system variable ‘storage_engine'”)

线下 MySQL数据库版本5.6切到线上5.7时,应修改MySQL 配置部分的‘init_command’: “SET storage_engine=INNODB;”,

 

喜欢 (1)
[]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址