django连接mysql不支持中文插入(Django创建项目+连通mysql的操作方法)
django连接mysql不支持中文插入
Django创建项目+连通mysql的操作方法1:django-admin.py startproject 项目名
2:cd 项目名
3:修改setting.py
|
( 1 ):ALLOWED_HOSTS = [] = >ALLOWED_HOSTS = [“ * ”] ( 2 ):LANGUAGE_CODE = 'en-us' = > LANGUAGE_CODE = 'zh-hans' ( 3 ):TIME_ZONE = 'UTC' = > TIME_ZONE = 'Asia/Shanghai' |
4:创建app
|
django - admin.py startproject app名 |
5:修改setting.py
|
INSTALLED_APPS数组增加 = > 'app名' |
6:项目目录下新增utils文件夹用来封装多个app公共方法
7:app目录下新增util文件用来封装耽搁app通用方法
8:app目录下新增view文件夹,里面存放各个页面的逻辑代码
9:app目录下新增路由文件(urls.py),用来存放此app下的所有路由
|
格式: from django.urls import path from .views import wx_pay urlpatterns = [ path( "test" , wx_pay.wx_pay().test, name = "test" ), # 测试 ] |
10:添加app路由至项目路由中;修改项目目录下的urls.py
|
from django.contrib import admin from django.urls import path, include from H5 import urls as h5_urls urlpatterns = [ path( 'admin/' , admin.site.urls), path( "h5/" , include(h5_urls)) ] |
至此django项目目录结构已经配置结束了,后面即可进入开发环节了。
开发时我们往往会用到数据库;下面介绍下怎么配置数据库
11:修改项目目录下的setting.py
|
默认: DATABASES = { 'default' : { 'ENGINE' : 'django.db.backends.sqlite3' , 'NAME' : BASE_DIR / 'db.sqlite3' , } } 修改后: DATABASES = { 'default' : { ‘ENGINE ' :' django.db.backends.mysql', 'NAME' : '数据库名(以下称DATABASE1)' , 'USER' : '用户名' , ‘PASSWORD ':' 数据库密码', 'HOST' : 'ip地址' , 'PORT' : '端口' } } |
12:打开数据库新增上面配置的数据库名(DATABASE1)
13:配置model,进入app目录的models.py文件
|
import time from django.db import models # Create your models here. class Test(models.Model): str = models.CharField( "字符串" , max_length = 30 , null = True , blank = True ) num = models.IntegerField( "数字" , default = 1 , null = True , blank = True ) create_time = models.DateTimeField( "时间" , default = time.strftime( '%Y-%m-%d %H:%M:%S' ), blank = True ) |
14:迁移数据至数据库
|
python manage.py makemigrations python manage.py migrate |
15:这时候大概率会报错如下:
Traceback (most recent call last):
中间省略若干
"/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/MySQLdb/__init__.py", line 24, in <module>
version_info, _mysql.version_info, _mysql.__file__
NameError: name '_mysql' is not defined
此报错主要因为Mysqldb 不兼容 python3.5 以后的版本
16:修改项目目录下的__init_.py,增加以下代码
|
import pymysql pymysql.version_info = ( 1 , 4 , 13 , "final" , 0 ) pymysql.install_as_MySQLdb() |
好啦 至此常用的都配置完成了
到此这篇关于Django创建项目+连通mysql的操作方法的文章就介绍到这了,更多相关Django创建项目连通mysql内容请搜索开心学习网以前的文章或继续浏览下面的相关文章希望大家以后多多支持开心学习网!
原文链接:https://juejin.cn/post/6935740758536224805
- mysql中json的支持(MySQL中json字段的操作方法)
- mysql中innodb四种事务级别(MySQL InnoDB 锁的相关总结)
- mysql char和varchar区别(MySQL CHAR和VARCHAR存储、读取时的差别)
- mysql 临时表
- mysql8.0.12安装教程图解(MySql8.023安装过程图文详解首次安装)
- 织梦源码安装数据库怎么填(Mysql修改端口号 织梦DedeCMS设置教程)
- 怎样查看mysql的ddl窗口(详解MySQL8.0原子DDL语法)
- mysql索引分几种(MySQL 覆盖索引的优点)
- docker如何搭建mysql(docker容器访问宿主机的MySQL操作)
- mysql获取随机数(MySQL 生成随机数字、字符串、日期、验证码及 UUID的方法)
- 在mysql中如何授权(MySQL 角色role功能介绍)
- mysqltext与varchar区别(MySQL CHAR和VARCHAR该如何选择)
- mysql支持存储表情(MySQL如何插入Emoji表情)
- mysql把重复数据删掉(mysql查找删除重复数据并只保留一条实例详解)
- mysql常见的存储引擎(如何选择MySQL的存储引擎?)
- mysql怎么创建联合索引(mysql的联合索引复合索引的实现)
- 乔欣 古装剧中的高颜值(古装剧中的高颜值)
- 怎么才可以财富自由(如何让自己实现财富自由)
- 为什么越来越多年轻人回农村(为什么越来越多年轻人回农村生活)
- 怎么快速学好英语(怎么快速学好英语初中)
- 中国留学生都是富二代吗()
- 我们现在吃的苹果是哪里来的 原来现代苹果引入中国仅有一百多年(我们现在吃的苹果是哪里来的)
热门推荐
- python redis锁的使用(Python操作redis实例小结String、Hash、List、Set等)
- SET NOCOUNT ON 作用
- mac的mysql连接问题如何解决(MAC 中mysql密码忘记解决办法)
- 数据类型typescript知多少(一文了解TypeScript数据类型)
- sql server 知识大全(sql server 交集,差集的用法详解)
- Request、Request.Form、Request.QueryString的区别
- 使用python爬取网易云音乐(15行Python代码实现网易云热门歌单实例教程)
- 火狐查看json数据
- mysql慢日志设置多少合适(MySQL慢查询日志的作用和开启)
- css3过渡动画制作(CSS3中动画属性transform、transition和animation属性的区别)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9