前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python3 django整理(六)配置数据库(mysql)

python3 django整理(六)配置数据库(mysql)

作者头像
学到老
发布2018-04-17 15:23:33
1.9K0
发布2018-04-17 15:23:33
举报

python3 下的mysql驱动

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

代码语言:javascript
复制
 import pymysql
pymysql.install_as_MySQLdb()
这里写图片描述
这里写图片描述

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

代码语言:javascript
复制
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类
代码语言:javascript
复制
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映射:

代码语言:javascript
复制
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中配置

代码语言:javascript
复制
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、写响应函数:如像数据中插入一个数据,并显示在页面上

代码语言:javascript
复制
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的可使用:

代码语言:javascript
复制
python manage.py runserver
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018年04月13日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • python3 下的mysql驱动
  • 配置setting
  • 创建与操作数据
    • 第三步:在models.py中创建model类
      • 第四步:根据model类创建数据库表
        • 第五步:开始写代码吧
          • 第六步:运行项目
          相关产品与服务
          云数据库 SQL Server
          腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档