Django连接mysql django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.3 or newer is required;
原因:pymysql没有这么高版本解决方法
C:\Programs\Python\Python36-32\Lib\site-packages\Django-2.0-py3.6.egg\django\db\backends\mysql
这个路径里的文件把
if version < (1, 3, 3)将这判断条件注释掉
(urls.W005) URL namespace 'admin' isn't unique. You may not be able to reverse all URLs in this namespace
原因:总urls路由与app上的urls路由中有2个admin路径解决方法:
注释掉一个
(mysql.W002) MySQL Strict Mode is not set for database connection 'default'
原因:django策略解决方法:在setting中DATABASES 加入
'OPTIONS': {
'init_command': "SET sql_mode='STRICT_TRANS_TABLES'",
}
报错:django.db.utils.InternalError: (1665, 'Cannot execute statement: impossible to write to binary log since BINLOG_FORMAT = STATEMENT and at least one tabl
e uses a storage engine limited to row-based logging. InnoDB is limited to row-logging when transaction isolation level is READ COMMITTED or READ UNCOMM
ITTED.')
解决:配置my.cnf,开启binlog_format=mixed,重启mysql创建数据库没有app.models中的表
解决方法:1在setting INSTALLED_APPS加入app名字
python manage.py makemigrations blog #blog为你的app名字
python manage.py migrate
<module>
from test_django.blog import views
ImportError: No module named 'test_django.blog'
django运行报此错,django项目根目录是test_django,所以他识别的是test_django下的test_django.blog,所以无此模块,改成 from blog import views 可正常执行但pycharm显示飘红
飘红是由于此项目放到了其他项目下,根目录冲突,Content Root目录变成了上一级另外个项目根目录。
python manage.py migrate 提示 "No migrations to apply" 无法生成表
第一步:
删除该app名字下的migrations文件。
第二步:
进入数据库,找到django_migrations的表,删除该app名字的所有记录。
delete from django_migrations;
第三步:
python manage.py makemigrations
python manage.py migrate