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慢查询(MySQL Threads_running飙升与慢查询的相关问题解决)
- mysql双向同步原理(详解MySQL的半同步)
- mysql字符集怎么看(mysql字符集相关总结)
- 停止mysql服务命令(windows下实现定时重启Apache与MySQL方法)
- mac版本php环境搭建(在Mac OS X中配置Apache+PHP+MySQL运行环境的详细步骤)
- mysql数据库基础练习(最全50个Mysql数据库查询练习题)
- mysql深度分页问题(MySQL DDL 引发的同步延迟该如何解决)
- mysql中mergeinto的用法(MySQL中exists、in及any的基本用法)
- mysql中的null是什么(浅谈为什么Mysql数据库尽量避免NULL)
- mysqlexplain各个字段作用(MySQL EXPLAIN语句的使用示例)
- mysql能groupby两个字段吗(MySQL group by语句如何优化)
- mysql不兼容问题(解决mysql 组合AND和OR带来的问题)
- mysql建立索引的主要目的(浅谈Mysql哪些字段适合建立索引)
- mysql中timestamp类型的CURRENT_TIMESTAMP 和ON UPDATE CURRENT_TIMESTAMP属性
- 命令行如何使用xampp中的mysql(解决xampp自启动和mysql.sock问题)
- mysql批量生成uuid(一种简单的ID生成策略: Mysql表生成全局唯一ID的实现)
- 感冒要吃什么药(猫咪感冒要吃什么药)
- 下雪会怎样(下雪怎样画)
- 白蓝色穿搭(白蓝色衣服配什么裤子)
- 天空是什么颜色(天空是什么颜色的英语)
- 高马尾扎发(高马尾扎发教程视频)
- 这里输入关键词(请手动输入关键词)
热门推荐
- 如何提升代码质量
- SQL如何操作Xml字段
- aspx页面无任何代码 每个页面发布成dll
- mysql主从同步原理详解(MySQL双主主主架构配置方案)
- php实现非递归快速排序(PHP实现无限极分类的两种方式示例递归和引用方式)
- ssm框架中的页面怎么写(apache SHTML网页SSI使用详解)
- pythonyield使用场景(Yii框架核心组件类实例详解)
- springboot docker 部署(详解docker部署SpringBoot及替换jar包的方法)
- thinkphp5设计权限(Thinkphp5.0 框架视图view的比较标签用法分析)
- clickhouse 底层架构(使用 Apache Superset 可视化 ClickHouse 数据的两种方法)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9