Django数据库基本操作(MySQL)
以一个示例工程为例:
下面是工程文件目录:

untited为项目文件(一般与根目录同名),CommunityModel为一个定义数据库模型的APP
一、定义模型
1.首先配置好数据库,在untited的setting.py中修改数据库配置代码

2.创建App ,名为CommunityModel
django-admin startapp CommunityModel
并在执行上述命令生成的CommunityModel文件的models.py中添加下示代码,用以生成一张数据表
from django.db import models class Article(models.Model):
name = models.CharField(max_length=)
title = models.TextField()
jianjie = models.TextField()
article = models.TextField()
time = models.DateTimeField(auto_now_add=True)
# Create your models here.
若要生成多张表,可以通过编写多个类实现。
3.根据模型,生成数据库
执行下列命令
python manage.py migrate
python manage.py makemigrations TestModel
python manage.py migrate TestModel
命令执行成功后,查看数据库可以发现,生成下图所示 名为communitymodel_article的数据表

二、数据库操作
1.编写数据库操作方法
在untited目录下新建article.py,并编写数据库操作的相关代码。如下所示,为一个增加记录操作,一个查询操作(关于数据库基本操作之后介绍)。
from django.http import HttpResponse
from CommunityModel.models import Article
from django.db import connection
from django.http import JsonResponse def _add(request):
name1 = request.POST.get('name')
title1 = request.POST.get('title')
jianjie1 = request.POST.get('jianjie')
article1 = request.POST.get('article')
try:
test1 = Article(name=name1, title=title1, jianjie=jianjie1, article=article1)
test1.save()
return JsonResponse(, safe=False)
except:
return JsonResponse(, safe=False) def _query(request):
list = Article.objects.all()
return JsonResponse(list, safe=False)
在untited目录下的urls.py中增加url配置代码,使数据库操作的方法能通过url调用
url(r'^addarticle$', article._add),
url(r'^queryarticle$', article._query)
2.具体数据库操作
增
test1 = Article(name="name", title="title", jianjie="jianjie", article="article")
test1.save()
删
test1 = Article.objects.get(name="name")
test1.delete()
改
test1 = Article.objects.get(name="name")
test1.name = "user"
test1.title = "head"
test1.jianjie = "hello"
test1.article = "hello,world"
test1.save()
查
list = Article.objects.all()
return JsonResponse(list, safe=False) #返回查询结果
参考文章:
django对数据库的操作有很多方式,更多复杂具体的操作可以参考下列文章 :
- Django进阶Model篇—数据库操作(ORM):https://www.cnblogs.com/happy-king/p/8338404.html
Django数据库基本操作(MySQL)的更多相关文章
- django数据库基本操作-增删改查(tip)-基本
补充:django外键保存 #外键保存 form_data = Form_Data() project, is_created = Project_Name.objects.get_or_create ...
- Python之路【第十九章】:Django 数据库对象关系映射
Django ORM基本配置 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接数据库,并编写数据访问层代码 业务逻辑层去 ...
- Django/MySql数据库基本操作&ORM操作
数据库配置: #第一步在settings里面 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME':'dbna ...
- Django Sqlite3 数据库向MySQL迁移
整合了两个URL而来.. 1,http://www.phodal.com/blog/django-mezzanine-sqlite3-migrate-mysql/ 2,http://www.ziqia ...
- Error loading MySQLdb module: No module named 'MySQLdb'----------- django成功连接mysql数据库的方法
在进行django学习过程中,尝试使用框架连接mysql数据库,启动服务器的时候经常遇到Error loading MySQLdb module: No module named 'MySQLdb' ...
- MySQL系列:数据库基本操作(1)
1. 登录数据库 mysql -h localhost -u root -p 2. 数据库基本操作 2.1 查看数据库 mysql> SHOW DATABASES; +------------- ...
- django框架配置mysql数据库
django配置mysql数据库: 1.首先更改django项目文件中的settings.py的数据库配置 DATABASES = { 'default': { 'ENGINE': 'django.d ...
- Linux下安装Python3的django并配置mysql作为django默认数据库(转载)
我的操作系统为centos6.5 1 首先选择django要使用什么数据库.django1.10默认数据库为sqlite3,本人想使用mysql数据库,但为了测试方便顺便要安装一下sqlite开发包 ...
- Django中把SQLite数据库转换为Mysql数据库的配置方法
我们在学习和开发Django的时候,一般是使用SQLite作为数据库.在正式讲网站部署上线是用MySQL数据库比较多.MySQL支持高并发的访问,而且相对于SQLite,MySQL性能更好.下面讲讲如 ...
随机推荐
- Zygote启动及其作用
目录 1.Zygote简介 2.Zygote进程如何启动 2.1 init.zygote64_32.rc文件 2.2 查看ps信息 2.3 启动 3.Zygote作用 3.1 启动system_ser ...
- useEffect代替常用生命周期函数(三)
在用Class制作组件时,经常会用生命周期函数,来处理一些额外的事情(副作用:和函数业务主逻辑关联不大,特定时间或事件中执行的动作,比如Ajax请求后端数据,添加登录监听和取消登录,手动修改DOM等等 ...
- 使用adb 命令(atrace)抓起systrace的方法。【转】
本文转载自:https://www.cnblogs.com/liuliu-word/p/9963017.html adb shell atrace -c -b 10240 --async_start ...
- R获取指定GO term和KEGG pathway的gene list基因集
clusterProfiler没有显性的接口,但是可以直接扣取clusterProfiler里的函数. 核心函数就是get_GO_data GO_DATA <- get_GO_data(&quo ...
- Prometheus磁盘监控
根据挂载目录 (node_filesystem_size_bytes {mountpoint ="/"} - node_filesystem_free_bytes {mountpo ...
- Flutter的运行环境标识
Flutter的四种运行模式:Debug.Release.Profile和test ,在实际开发中,我们往往需要根据当前运行模式的不同,选择不同的操作,比如在Debug模式启用Log.在生产模式关闭L ...
- RabbitMQ 入门教程(PHP版) 延迟队列,延迟任务
延迟任务应用场景 场景一:物联网系统经常会遇到向终端下发命令,如果命令一段时间没有应答,就需要设置成超时. 场景二:订单下单之后30分钟后,如果用户没有付钱,则系统自动取消订单. 场景三:过1分钟给新 ...
- 123457123456#1#----com.tym.DishuGame78--前拼后广--宝宝打地鼠_tym
com.tym.DishuGame78--前拼后广--宝宝打地鼠_tym
- Django models中的meta选项
通过一个内嵌类 "class Meta" 给你的 model 定义元数据, 类似下面这样: class Foo(models.Model): bar = models.CharFi ...
- 单独使用MyBatis的简单示例
单独使用MyBatis的简单示例:mybaties-config.xml:MyBatis配置文件 <?xml version="1.0" encoding="UTF ...