关于django新版本无法使用MySQL数据库的问题
参考这里
稍微记录下Django2.2使用MariaDB和MySQL遇到的坑
现在演示一下整个流程吧
1.创建项目和应用

PS:你也可以使用PyCharm直接创建项目
2.注册应用
先把刚刚创建的应用添加进去

3.配置MySQL或者MariaDB

4.PyMySQL替换默认的MySQLdb
Django使用的MySQLdb对Python3支持力度不够,我们用PyMySQL来代替

这句话其实就是兼容代码,这样你导入mysqldb也相当于导入PyMySQL了

5.创建数据库
Django除了默认的sqlite会帮你创建数据库外(只创建对应的表),其他数据库都不会帮你创建的,所以你需要自己创建

6.django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 or newer is required; you have 0.9.3.
如果你的Django是最新的2.2,PyMySQL也是最新的0.93的话,你会发现Django会报错:
django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 or newer is required; you have 0.9.3.
这个是Django对MySQLdb版本的限制,我们使用的是PyMySQL,所以不用管它

7.AttributeError: 'str' object has no attribute 'decode'
再继续运行发现又冒了个错误:AttributeError: 'str' object has no attribute 'decode'
这个就不能乱改了,所以先调试输出下:

发现是对字符串进行了decode解码操作:(一般对字符串进行编码,二进制进行解码)

解决也很简单,改成encode即可

8.再运行
再运行就没错误了

但也没有什么东西

发现了个后台貌似也登录不上

9.生成对应的数据库
先创建一个用户的模型类

生成对应的数据库(项目里可以写个build.sh的脚本批量化执行)

这个有点类似Net的CodeFirst了

10.生成对应的后台管理页面
设置后台语言,默认是英语的

创建超级管理员

在admin中注册对应的模型类

这时候运行就可以管理对应的页面了

登录页面

后台管理主页

这时候就可以创建修改UserInfo类了

我随便创建了几个用户

这种对象直接tostring(str(xxx))会导致显示不人性化,如果想知道显示的字段也很简单:

然后刷新下列表页就ok了(如果手动输入命令则不用重启服务器,通过PyCharm运行的需要重新启动下)

是不是轻轻松松就解决了对数据库表的增删改查?这就是Django的强大之处
逆天点评:Net的MVC最擅长的就是
快速生成前端页面和对应的验证,而Python的Django最擅长的就是快速生成后台管理页面。这两个语言都是快速建站的常用编程语言(项目 V1~V2 阶段)
WCF分布式开发必备知识(1):MSMQ消息队列
MSMQ创建消息队列出现“工作组安装计算机不支持该操作”
在asp.net利用jquery.MultiFile实现多文件上传(转载)
让ASP.NET MVC不使用jsonp也可以跨域访问
设计模式学习之适配器模式(Adapter,结构型模式)(14)
设计模式学习之策略模式(Strategy,行为型模式)(13)
设计模式学习之命令模式(Command,行为型模式)(12)
设计模式学习之代理模式(Proxy,结构型模式)(11)
设计模式学习之组合模式(Composite,结构型模式)(10)
- 最新文章
-
linux安装zookeeper及使用
linux安装jdk
android开发类似coverflow效果的3d旋转
android 安装应用程序apk安装不了
android activity之间传递返回值
android开发,设置listview的高度无效
android 实现2张图片层叠效果
android 自定义折线图
android 常用selector 颜色搭配(按钮、显示圆角等)
android 通过httpclient下载文件并保存
- 热门文章
-
android 下载图片出现SkImageDecoder::Factory returned null,BitmapFactory.Options压缩
volley框架 出现at com.android.volley.Request.<init>
Darwin Streaming Server for Windows 安装
关于Suppressing notification from package com.xxx.xxx by user request.的异常
关于有些.aidl源码的eclipse编译后生成.java文件的错
常用正则表达式
SQL Server 2008开启sa账户以及如何用JDBC进行连接
SQL Server 2008 添加登录账户 配置权限
在谷歌浏览器中安装防广告的插件(abp)
Rational Rose 2003 下载及破解方法