python3 django配置数据库(mysql)

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: python3 django配置数据库(mysql)http://www.bieryun.com/3311.html python3 下的mysql驱动 django 连接mysql默认驱动是MySQLdb,MySQLdb没有支持python3的版本,如果使用python3.

python3 django配置数据库(mysql)http://www.bieryun.com/3311.html

python3 下的mysql驱动

django 连接mysql默认驱动是MySQLdb,MySQLdb没有支持python3的版本,如果使用python3.x版本时,django连接mysql的方法
1、使用pymysql替换MySQLdb
在配置文件同目录下的init.py文件中加入以下代码

 import pymysql
pymysql.install_as_MySQLdb()

这里写图片描述
2、使用mysqlclient代替MySQLdb,mysqlclient项目在github上的地址为 https://github.com/PyMySQL/mysqlclient-python,该项目fork MySQLdb,加入了对python3的支持
安装方式为:

pip install mysqlclient

使用方式和MySQLdb一样

配置setting

第二步:在settings.py中配置mysql连接参数(没有mysql的先装mysql)
将原有的数据库配置改写成如下:
DATABASES = {
‘default’: {
‘ENGINE’: ‘django.db.backends.mysql’,
‘NAME’: ‘数据库名(你得先在mysql中创建数据库)’,
‘USER’:’mysql用户名(如root)’,
‘PASSWORD’:’密码(如123456789)’,
‘HOST’:’域名(127.0.0.1或localhost)’,
‘PORT’:’端口号(3306)’,
}
}
这里写图片描述

创建与操作数据

在models.py中创建model类

第三步:在models.py中创建model类

from django.db import models

# Create your models here. 类似于MVC架构中的Model
class Article(models.Model):
    title = models.CharField(max_length=60,default='title')
    content = models.TextField(null=True)

第四步:根据model类创建数据库表

1、cmd进入django项目路径下
2、python manage.py migrate #创建表结构,非model类的其他表,django所需要的
3、python manage.py makemigrations app名 #做数据迁移的准备
如:python manage.py makemigrations myblog myblog是我项目中的app名字
4、python manage.py migrate # 执行迁移,创建medel表结构

第五步:开始写代码吧

首先说下需求,就是在代码里向mysql中插入一条记录并显示到页面
1、在templates下新建一个模板,其实就是页面,如index.html
{{article.title}}
内容:{{ article.content }}
使用{{ }}在页面进行数据显示,这里看下就明白
2、配置URL
1、在项目下的urls.py(注意是项目下的urls.py)配置url映射:

from django.conf.urls import url,include
from django.contrib import admin
#根url配置
urlpatterns = [
    #url(页面正则,响应的方法名称)
    url(r'^admin/', admin.site.urls),
    url(r'^myblog/',include('myblog.urls')),
]

这里注意有一个include(’myblog.urls’)是我们接下来要配置的二级url,在app下的urls.py中配置

from django.conf.urls import url
from django.contrib import admin
from . import views
urlpatterns = [
    #url(页面正则,响应的方法名称) ^index$:表示要以index开始和结束,正则约束
    url(r'^index/$',views.index),
]

现在一个路径为’localhost:8000/myblog/index/’的访问路径就配好了,url(r’^index/$’,views.index)就表示最终/myblog/index/这个路径由views.py中的index方法来响应。
3、写响应函数:如像数据中插入一个数据,并显示在页面上

from django.shortcuts import render
from django.http import HttpResponse
from myblog.models import Article
# Create your views here.
def index(request):
    article = Article(title='标题',content='内容!')
    article.save()
    return render(request,'index.html',{'article':article}

第六步:运行项目

我这里使用的pycharm,点击运行按钮即可,没有pycharm的可使用:

python manage.py runserver
相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
4天前
|
应用服务中间件 数据库连接 网络安全
网站连接数据库配置错误
网站连接数据库配置错误
|
20天前
|
Linux 编译器 开发工具
快速在linux上配置python3.x的环境以及可能报错的解决方案(python其它版本可同样方式安装)
这篇文章介绍了在Linux系统上配置Python 3.x环境的步骤,包括安装系统依赖、下载和解压Python源码、编译安装、修改环境变量,以及常见安装错误的解决方案。
28 1
|
3天前
|
数据可视化 关系型数据库 MySQL
【IDEA】配置mysql环境并创建mysql数据库
【IDEA】配置mysql环境并创建mysql数据库
24 0
|
1月前
|
SQL 关系型数据库 分布式数据库
PolarDB Proxy配置与优化:提升数据库访问效率
【9月更文挑战第6天】PolarDB是阿里云推出的高性能分布式关系型数据库,PolarDB Proxy作为其关键组件,位于客户端与PolarDB集群间,负责SQL请求的解析与转发,并支持连接池管理、SQL过滤及路由规则等功能。本文详细介绍了PolarDB Proxy的配置方法,包括连接池、负载均衡和SQL过滤设置,并探讨了监控调优、缓存及网络优化策略,以帮助提升数据库访问效率。
34 1
|
18天前
|
数据库 Python
django中数据库外键可以自定义名称吗
django中数据库外键可以自定义名称吗
|
18天前
|
开发者 Python
Python POST 请求超时配置
Python POST 请求超时配置
13 0
|
20天前
|
存储 数据库 Python
python的对象数据库ZODB的使用(python3经典编程案例)
该文章介绍了如何使用Python的对象数据库ZODB来进行数据存储,包括ZODB的基本操作如创建数据库、存储和检索对象等,并提供了示例代码。
23 0
|
20天前
|
JSON NoSQL 数据库
和SQLite数据库对应的NoSQL数据库:TinyDB的详细使用(python3经典编程案例)
该文章详细介绍了TinyDB这一轻量级NoSQL数据库的使用方法,包括如何在Python3环境中安装、创建数据库、插入数据、查询、更新以及删除记录等操作,并提供了多个编程案例。
40 0
|
1月前
|
Java 数据库连接 数据库
数据库以及其他项目配置
该项目配置了数据库连接和MyBatis设置,并解决了配置文件加载问题。启动类使用 `@SpringBootApplication` 注解,可通过 `@ComponentScan` 指定扫描包。Lombok 自动生成 getter/setter 等方法,简化代码。Result 实体类用于统一返回格式。用户模块包括注册与登录功能,使用 MD5 加密密码、Spring Validation 参数校验及 JWT 认证。JWT 工具类处理令牌生成与解析,并通过拦截器验证。Redis 优化登录功能,利用 ThreadLocal 存储用户信息。此外,还包括文章模块的相关功能,如文章分类管理、
39 2