Django 3常见问题

Django Alan 5年前 (2020-02-03) 5045次浏览 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;”,

5、如何允许字段可输入 Emoji?

MySQL数据库对应字段应修改为 utf8mb4,同时在配置文件中也需要对 charset 进行相应的修改

6、OSError: [E050] Can’t find model ‘en’. It doesn’t seem to be a shortcut link, a Python package or a valid path to a data directory.

7、ModuleNotFoundError: No module named ‘pip’

 

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

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

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

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