首先,祭出大杀器whl

https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysqlclient

django1.x与django2.x 在项目的写法上有一些区别,常见的有以下:

1.配置文件中中间件的写法:

由middleware_class 直接改成:middleware  所以,在遇到直接从网上DOWN的项目的时候,一定要注意,这里的区别,否则你永远不知道各种错误是从哪里来的

2.就是url.include的写法

在django2.x中.app_name 是直接写到 app的url中,无需再在主的url中写这个

如:project的urls

url(r'', include(('blog.urls','blog'),namespace='blog')),
app的urls:
from blog import views 

app_name="blog"
urlpatterns = [
url(r'^$', views.IndexView.as_view(), name='index'),
url(r'^blog/article/(?P<article_id>\d+)$', views.ArticleDetailView.as_view(), name='detail'),

3.关于django连接mysql的各种资料中,以下做一个总结:

如果我们django 使用的python 版本为2.x的时候,我们连接mysql使用:pymysql

1.pip install  pymysql

2.project的setting文件头部加上:

# import pymysql
# pymysql.install_as_MySQLdb() 如果我们python 版本使用的是3.4及以上的时候,我们连接mysql使用:mysqlclient
安装mysqlclient的时候,请使用上面的大杀器whl来安装
在这里搜索:https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysqlclient符合你操作系统以及当前python版本的mysqlclient,copy到你的project所在的目录,如下面的:

执行:pip install mysqlclient-1.4.2-cp36-cp36m-win_amd64.whl  执行安装,
注意,这时候,我们不需要再去改setting了,无需再添加 import pymysql这个,因为当前的数据库驱动使用的是:mysqlclient了 最后,执行: pip freeze ->requirement.txt 这里写这个东西的原因是:网上看到有很多神奇的歪招,让去改什么 site_package/django/db/backend/db.py里面的判断,不做置评,但是,这个改了之后,如果应用程序是在docker发布的时候,将是非常麻烦的,
总之,像这样改了之后,我是没有成功在docker中成功发布过应用,所以建议不去改动基础类库

django之python3.4及以上连接mysql的一些问题记录的更多相关文章

  1. Python3中使用PyMySQL连接Mysql

    Python3中使用PyMySQL连接Mysql 在Python2中连接Mysql数据库用的是MySQLdb,在Python3中连接Mysql数据库用的是PyMySQL,因为MySQLdb不支持Pyt ...

  2. Python3.x使用PyMysql连接MySQL数据库

    Python3.x使用PyMysql连接MySQL数据库 由于Python3.x不向前兼容,导致Python2.x中的很多库在Python3.x中无法使用,例如Mysqldb,我前几天写了一篇博客Py ...

  3. python3.6下pycharm连接mysql

    由于python3.x里面没有了MysqlDB,所以使用python3.6+django连接不上mysql,会报错 no modul "MysqlDB".于是就有了一个替代品,叫p ...

  4. vs2017 + Python3.6 +Django1.11 连接mysql数据库

    不废话直接来. vs2017创建一个新的python web项目之后默认链接数据库是sqlite.但是我就想连接到Mysql 上面玩,于是开始倒腾了.下面是步骤 1.修改settings.py 文件需 ...

  5. django1.6.x(python3.3)使用pymysql连接mysql

    1.安装 pymysql,地址:https://code.google.com/p/pymysql/ 2.安装django 然后执行 django-admin.py startproject mysi ...

  6. python3.6 使用 pymysql 连接 Mysql 数据库及 简单的增删改查操作

    1.通过 pip 安装 pymysql 进入 cmd  输入  pip install pymysql   回车等待安装完成: 安装完成后出现如图相关信息,表示安装成功. 2.测试连接 import ...

  7. python3使用pymysql库连接MySQL的常用操作

    #导入pymysql模块import pymysql #连接数据库connect = pymysql.connect( host='localhost', port=3306, user='root' ...

  8. 黄聪:远程连接mysql数据库注意事项记录(远程连接慢skip-name-resolve)

    远程连接慢 慢是一个很大的问题,网上的办法是在my.ini的“[mysqld]”下面加入一行“skip-name-resolve”,就像这样: 然后保存并重启mysql服务即可. 下面是其它网友的补充 ...

  9. 在Django中连接MySQL数据库(Python3)

    我的环境:      python3.6,      Django2.1.5,      MySQL8.0.15,      win10,      PyCharm, 要求:已经安装了MySQL数据库 ...

随机推荐

  1. ubuntu & sublime字体设置

    ubuntu # yahei http://pan.baidu.com/share/link?shareid=972621198&uk=1243888096&fid=333591974 ...

  2. Asp.Net实现伪静态(通过URLRewriter)

    一.起因 最近一个项目要实现伪静态,之前没接触过,故一切从零开始,开始网上查资料,方法大概有三种,但是我都试了好几个,都失败了.望有建议的博友给点建议,这里我实现了一种方式,是通过微软URLRewri ...

  3. windows cmd窗口,输出UTF-8格式文件,显示乱码

    本文来自网络,参考文档见文档末尾 想在windows cmd窗口中查看utf-8中文,需要先执行以下步骤 chcp 65001 将CMD窗口切换成UTF-8代码页 在命令行标题栏上点击右键,选择&qu ...

  4. *5. Longest Palindromic Substring (dp) previous blogs are helpful

    Given a string s, find the longest palindromic substring in s. You may assume that the maximum lengt ...

  5. IOS item属性总结

    一.UINavigationItem1> 获得方式self.navigationItem // self是指控制器 2> 作用可以用来设置当前控制器顶部导航栏的内容// 设置导航栏中间的内 ...

  6. bzoj2568 比特集合

    Description 比特集合是一种抽象数据类型(Abstract Data Type) ,其包含一个集合S,并支持如下几种操作: INS M : 将元素 M 插入到集合S中: DEL M : 将集 ...

  7. ELF文件中section与segment的区别

    http://blog.csdn.net/joker0910/article/details/7655606 1. ELF中的section主要提供给Linker使用, 而segment提供给Load ...

  8. 中期ppt制作

    陀螺仪的使用解释:https://zhuanlan.zhihu.com/p/29244429 手机坐标轴的图片:http://jcjs.siat.ac.cn/ch/reader/create_pdf. ...

  9. hadoop中compare函数

    在看hadoop  的二次排序的时候,改写了下, 加了第三个参数,  本来以为是在 public int compareTo(IntPair o) { System.out.println(" ...

  10. 流形(Manifold)初步

    原文链接 欧几里得几何学(Euclidean Geometry) 两千三百年前,古希腊数学家欧几里得著成了<几何原本>,构建了被后世称为“欧几里得几何学”的研究图形的方法.欧几里得创立了当 ...