django项目常见报错集
1.mysqlclient 目前不支持高版本python3
django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 or newer is required; you have 0.9.3.
原因是由于 mysqlclient 目前不支持高版本python,出现这个错误之后可以根据错误提示找到文件位置,打开 base.py 文件,找到以下代码:将 if 语句注释掉之后在执行命令就不会再报错。

启动django时报错:
1.Watching for file changes with StatReloader(使用状态加载程序监视文件更改
原因:可能是Django版本和Python版本或者PyMysql版本不一致
解决办法:https://www.jianshu.com/p/c44b0c88fafe
2.报如下错:
原因:跟路由没修改,我这里出的错是crm/urls.py中url(r'^$', views.dashboard ),--把$去掉就好了。
解决https://www.cnblogs.com/guokaifeng/p/11084997.html
3.Django 中创建Model时报以下错误:
TypeError: init() missing 1 required positional argument: ‘on_delete’
解决方案: 定义外键的时候需要加上 on_delete=; 即:contract = models.ForeignKey(Contract, on_delete=models.CASCADE)
原因如下: django 升级到2.0之后,表与表之间关联的时候,必须要写on_delete参数,否则会报异常:
4.添加menus菜单时报错:
Exception Value: no such table: crm_menus
解决:python manage.py makemigrations crm
python manage.py migrate
5.Django报错Exception Value: no such table xx
执行以下两步骤: python manage.py makemigrations app_name python manage.py migrate
6.django数据迁移时报错;TypeError: object supporting the buffer API required
解决:settings.py中密码必须为字符串类型
7.pycharm 换成2019之后连接数据库用户名密码数据库名字都没错,就是连接不上去:
Connection to nb_crm@localhost failed. [08001] Could not create connection to database server. Attem
解决办法:
在终端里先使用管理员登录mysql,也就是root
解决:执行如下命令更改时区:
show variables like '%time_zone%'; set global time_zone = '+8:00' ; 设置完以后,退出mysql,重新登录,检查时间是否被修改,结束后就退出cmd,去pycharm里面重新连接看看
8.FieldError at /crm/consult_record_list/
Cannot resolve keyword 'delete_status' into field. Choices are: course_memo, course_title, date, day_num, has_homework, homework_memo, homework_title, id, re_class, re_class_id, scoring_point, studyrecord, teacher, teacher_id
9.报错:django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 or newer is required; you have 0.9.3.
解决:原因是由于 mysqlclient 目前不支持高版本python,出现这个错误之后可以根据错误提示找到文件位置,打开 base.py 文件,找到以下代码:将 if version 语句注释掉之后在执行命令就不会再报错。
version = Database.version_info # if version < (1, 3, 13): # raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__version__)
10.启动django时报错Watching for file changes with StatReloader(使用状态加载程序监视文件更改 )
INFO autoreload 598 Watching for file changes with StatReloader
Exception in thread django-main-thread:
Traceback (most recent call last):
File "/root/.virtualenvs/meiduo_mall/lib/python3.6/site-packages/django/template/utils.py", line 66, in __getitem__
return self._engines[alias]
KeyError: 'django'
............
return [self[alias] for alias in self]
File "/root/.virtualenvs/meiduo_mall/lib/python3.6/site-packages/django/template/utils.py", line 90, in <listcomp>
return [self[alias] for alias in self]
File "/root/.virtualenvs/meiduo_mall/lib/python3.6/site-packages/django/template/utils.py", line 81, in __getitem__
engine = engine_cls(params)
File "/root/.virtualenvs/meiduo_mall/lib/python3.6/site-packages/django/template/backends/django.py", line 27, in __init__
self.engine = Engine(self.dirs, self.app_dirs, **options)
TypeError: __init__() got an unexpected keyword argument 'environment'
原因:可能是Django版本和Python版本或者PyMysql版本不一致
解决:升级或者降级Django版本
如:命令如下:
pip install django==2.1.7 #django==版本号
10.启动项目报错:-----更换jinja2模板引擎的问题
ERRORS: ?: (admin.E403) A 'django.template.backends.django.DjangoTemplates'
解决:
解决办法:
不修改原有引擎配置,新增引擎jinja2, 即在settings.py中 TEMPLATES = [
{
'BACKEND': 'django.template.backends.jinja2.Jinja2',
'DIRS': [os.path.join(BASE_DIR,'templates'),],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
'environment':'app.base_jinja2.environment'
},
},
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'templates')]
,
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
}
]
并且一定要把jinja2 引擎放在前面, 否则默认生效的还是django模板引擎
11.图形验证码出不来,看下图效果:

从上图中可看出请求头中有meiduo.site又是127.0.0.0这样肯定出不来---因为我是在本地127请求,所以先去找我js中的host代码,把host代码改成127如下即可:

django项目常见报错集的更多相关文章
- lunix部署其前端项目常见报错
1.npm install 报权限错误,如: 解决办法: 添加--unsafe-perm 参数,如 #npm install --registry=https://registry.npm.taoba ...
- HDFS集群常见报错汇总
HDFS集群常见报错汇总 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.DataXceiver error processing WRITE_BLOCK operation 报 ...
- Django 连接 MySQL 数据库及常见报错解决
目录 Django 连接 MySQL数据库及常见报错解决 终端或者数据库管理工具连接 MySQL ,并新建项目所需数据库 安装访问 MySQL 的 Python 模块 Django 相关配置 可能会遇 ...
- java常见报错及解决
Java常见报错信息: Java 常见异常种类 Java Exception: 1.Error 2.Runtime Exception 运行时异常 3.Exception 4.throw 用户自定 ...
- 03:git常见报错解决方法
1.1 git常见报错解决方法 1.warning: LF will be replaced by CRLF in .idea/workspace.xml. 参考博客:https://www.cnbl ...
- web报表工具FineReport使用中遇到的常见报错及解决办法(二)
web报表工具FineReport使用中遇到的常见报错及解决办法(二) 这里写点抛砖引玉,希望大家能把自己整理的问题及解决方法晾出来,Mark一下,利人利己. 出现问题先搜一下文档上有没有,再看看度娘 ...
- JavaScript 调试常见报错以及原因
JavaScript 调试常见报错以及原因 测试环境 chrome 版本 66.0.3359.170(正式版本) (64 位) TypeError 类型错误 不是操作符所接受的数据类型. //---- ...
- Nginx 常见报错
Nginx 常见报错 启动报错:[emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use) 原因:这个是nginx重启时经常遇到 ...
- C语言开发中常见报错的解决方案
C语言开发中常见报错的解决方案 整理来源于网络,侵权请通知删除.*禁止转载 ---- fatal error C1003: error count exceeds number; stopping c ...
随机推荐
- Java实现 LeetCode 753 破解保险箱(递归)
753. 破解保险箱 有一个需要密码才能打开的保险箱.密码是 n 位数, 密码的每一位是 k 位序列 0, 1, -, k-1 中的一个 . 你可以随意输入密码,保险箱会自动记住最后 n 位输入,如果 ...
- Java实现 LeetCode 138 复制带随机指针的链表
138. 复制带随机指针的链表 给定一个链表,每个节点包含一个额外增加的随机指针,该指针可以指向链表中的任何节点或空节点. 要求返回这个链表的 深拷贝. 我们用一个由 n 个节点组成的链表来表示输入/ ...
- Java实现 蓝桥杯 历届试题幸运数
问题描述 幸运数是波兰数学家乌拉姆命名的.它采用与生成素数类似的"筛法"生成 . 首先从1开始写出自然数1,2,3,4,5,6,- 1 就是第一个幸运数. 我们从2这个数开始.把所 ...
- Java实现考察团组成
考察团组成 某饭店招待国外考察团.按照标准,对领导是400元/人,随团职员200元/人,对司机50元/人. 考察团共36人,招待费结算为3600元,请问领导.职员.司机各几人. 答案是三个整数,用逗号 ...
- 并发编程之sun.misc.Unsafe类
1.Unsafe知识点整理 2.代码: package com.javabasic.unsafe; import java.lang.reflect.Field; import sun.misc.Un ...
- Numpy中数据的常用的保存与读取
保存到文本文件numpy.savetxt()numpy.loadtxt() import numpy as np x= np.arange(0,10,0.1) np.savetxt('save_x', ...
- Vugen使用技巧
调整各种选项的超时时间
- CVE-2020-0796—远程代码执行漏洞
一.漏洞名称: 微软SMBv3 Client/Server - 远程代码执行漏洞——CVE-2020-0796 二.识别点: 445端口 三.影响范围: Windows 10 Version 1903 ...
- 厉害了!除了find命令,还有这么多文件查找命令,高手必备!
大家好,我是良许. 在系统里查找文件,是所有工程师都必备的技能(不管你用的是 Windows .Linux.还是 MacOS 系统).对于 Linux 操作系统,单单一个 find 命令就可以完成非常 ...
- 【JMeter_13】JMeter逻辑控制器__执行时间控制器<Runtime Controller>
执行时间控制器<Runtime Controller> 业务逻辑: 根据输入的Runtime的值,对当前节点下的执行时长进行控制,当执行时长超过限定时长后,执行完当前正在执行的取样器后,跳 ...