python测试开发django-2 链接mysql

数据库链接,上篇文章中简单对sqlite3进行了操作使用 (上篇:https://www.cnblogs.com/wfwt180801-/p/12044332.html

Django 对各种数据库提供了很好的支持,包括:PostgreSQL、MySQL、SQLite、Oracle。本篇以mysql为例简单介绍django连接mysql进行数据操作

这里使用的mysql 版本为8.0.11 安装参考 https://www.cnblogs.com/wfwt180801-/p/10557292.html

PyMySQL 安装

pip install -i https://pypi.douban.com/simple PyMySQL 我这里使用了豆瓣源安装

 

项目目录仅供参考

django 数据库配置

settings.py 文件中找到 DATABASES 配置项, django默认连接sqllite
我们连接mysql需要账户密码,也就是之前安装mysql的root用户名,和自己设置的密码,NAME是数据库的名称,连接配置如下:
NAME:'DjangoModel' 对应库名
需要创建或指定现有库名

1.创建 djangoModel库
-create database DjangoModel charset=utf8;
-添加mysql驱动
-DAtabase —— + ——Data Source——mysql
-添加 库名,mysql账号密码,进行测试,确定添加,添加成功


-项目目录下初始化文件中模拟mysqldb ,这里使用pymysql
-需要安装pymysql
-pip install pymysql 我这的安装版本为Version: 0.9.3

  



-项目初始化文件路径...\DjangoModel\__init__.py文件
-import pymysql
-pymysql.install_as_MySQLdb()#

 

 

-执行迁移
-python manage.py migrate
至此打开mysql试图查看就可看到迁移过去的表数据

 

 

新建表,定义数据模型 ...\DjangoModel\App\models.py 中代码如下

 

#生成迁移文件、执行迁移生成数据库表
-python manage.py makemigrations
-生成的迁移文件在应用目录下migrations中 (...\DjangoModel\App\migrations)
-生成迁移文件报错
-生成迁移文件出错 No changes detected,说明在根目录中settings中没有注册子应用
E:\web_djo\hellodjango>python manage.py makemigrations
No changes detected
        -如何注册?

-执行迁移
-python manage.py migrate
迁移后查看mysql视图中看到我们新建的表People

 

 models 使用了orm技术
    -object Relational Mapping 对象关系映射
    -将业务逻辑进行了一个解耦合
    -object.save()保存
    -object.delete()删除

 

 

 

使用封装的模板类创建点数据

...\DjangoModel\App\urls.py

...\DjangoModel\App\views.py 文件中代码如下

 

urls.py

 

from django.conf.urls import url
from App import views
urlpatterns =[
url(r'^addpeople/',views.add_peole),
]

 

views.py

 

from django.http import HttpResponse
from django.shortcuts import render

# Create your views here.
from App.models import Person


def add_peole(request):
for i in range(15):
people =Person()
flag=random.randrange(100)
people.p_naem = "Tom%d" % i
people.p_age=flag
people.p_sex=flag % 2
people.save()
return HttpResponse('批量创建成功')

 

启动项目 python manage.py runserver
浏览器访问 http://127.0.0.1:8000/App/addpeople/  此时我可以看到给出的提示信息,批量创建成功

 

 

那么是否真的创建成功了呢?

 

打开mysql视图查看是否有数据,如果要是没有数据,点击刷新或者cmd/nvcat下切换库中查看是否有数据了

 

 

 

 

 

 

 

 

 



 
 

 

 

 

 

 

 

 

 

 



posted @ 2019-12-18 11:22  北方Test  阅读(254)  评论(0编辑  收藏  举报