如果我们想使用Django对数据库进行访问,我们可以使用django自带的shell。

进入blog目录,打开cmd命令窗口,输入python manage.py shell,如下图所示:

插入数据

打开cmd命令窗口,进入manage.py同级目录,输入python manage.py shell,如下所示,下面是2种插入数据方式:

C:\Users\EDZ\Desktop\Blog最新\blog>python manage.py shell
Python 3.6.6 (v3.6.6:4cf1f54eb7, Jun 27 2018, 03:37:03) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> from article.models import Article
>>>b1=Article(id=1,title='t_title',author='t_author',content='test_content')
>>> b1.save()
>>>b2=Article.objects.create(id=2,title='t2_title',author='t2_author',content='test_content')

需要说明的是, 表的 id 字段已经设置了自增, 所以, 该字段为空可以添加数据。但是我们还是指定id,方便我们做接口自动化测试时知道博客id。首先我们导入Article类,b1=Article(id=1,title='t_title',author='t_author',content='test_content')意思是往表中的字段插入数据,b1.save()的意思是对数据进行保存,Article.objects.create()方法将两步合为一步, 方法如上所示。

查询数据

查询我们可以查询所有数据,指定数据,模糊查询,如下所示:

>>> from article.models import Article
>>> Article.objects.all()
<QuerySet [<Article: t_title>, <Article: t2_title>]>
>>> b3 = Article.objects.get(id=1)
>>> b3
<Article: t_title>
>>> b3.title
't_title'
>>> b4 = Article.objects.filter(title__contains='title')
>>> b4
<QuerySet [<Article: t_title>, <Article: t2_title>]>

Article.objects.all()查询所有

Article.objects.get(id=1)指定查询

Article.objects.filter(title__contains='title') 标题含有title的模糊查询

更新数据

我们先查询到所需更新的数据,然后通过.字段名或者.update方式进行更新,如下所示:

>>> from article.models import Article
>>> b5 = Article.objects.get(id=1)
>>> b5.title = 'b3'
>>> b5.save()
>>> Article.objects.filter(id=2).update(title='b33')

删除数据

我们先查询到所需删除的数据,然后通过.delete方式进行删除,如下所示:

>>> from article.models import Article
>>> b6 = Article.objects.get(id=1)
>>> b6.delete()
(1, {'article.Article': 1})

16. Django基础数据访问的更多相关文章

  1. Django Model数据访问Making queries

    创建完Model之后, Django 自动为你提供一套数据库抽象层的API,利用它可以完成创建,提取,更新,删除对象的操作. 以下面的Model为例: class Blog(models.Model) ...

  2. winform基础——数据访问及几个案例

    数据访问分为三个部分:(1)创建链接(2)创建与执行命令(3)读取或准备相关数据 一,需要引用的命名空间 using data: using data.SqlClient; 二,创建与数据库的链接—— ...

  3. ABP框架之——数据访问基础架构

    大家好,我是张飞洪,感谢您的阅读,我会不定期和你分享阅读心得,希望我的文章能成为你成长路上的一块垫脚石,我们一起精进. 几乎所有的业务应用程序都要适用一种数据库基础架构,用来实现数据访问逻辑,以便从数 ...

  4. PHP数据访问基础知识(20161028)

    数据访问 动态页面的特征:能够读取数据库,网页的内容都是从数据库读出来的,而不是写死的 所有的程序归根结底都是对数据的增删改查 如何用服务器的PHP来操作服务器的MySQL,Apache则是用来管理, ...

  5. JAVAWEB基础模块开发顺序与数据访问对象实现类步骤

    一.模块的开发的顺序 1. 定义数据表 2. 新建模型类 3. 新建"add.jsp" 4. 实现AddServlet中的doGet()方法 5. 定义Dao.Service接口 ...

  6. 01: Django基础篇

    目录:Django其他篇 01:Django基础篇 02:Django进阶篇 03:Django数据库操作--->Model 04: Form 验证用户数据 & 生成html 05:Mo ...

  7. Django基础五之Ajax

    Django基础五之Ajax 目录 Django基础五之Ajax 1. Ajax介绍 2. Ajax前后端传值 2.1 方法一HttpResponse直接返回 2.2 方法二使用Json格式返回 2. ...

  8. django基础篇

    Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM.模型绑定.模板引擎.缓存.Session等诸多功能. ...

  9. Python之路-(js正则表达式、前端页面的模板套用、Django基础)

    js正则表达式 前端页面的模板套用 Django基础 js正则表达式: 1.定义正则表达式 /.../  用于定义正则表达式 /.../g 表示全局匹配 /.../i 表示不区分大小写 /.../m ...

随机推荐

  1. vue项目在IE下显示空白打不开问题

    近期遇到了项目是vue做的,在IE浏览器下打不开,显示空白问题,解决方案如下: 打不开的原因是因为少了babel-polyfill处理器,所以第一步需要下载: npm install babel-po ...

  2. (appium+python)UI自动化_01_自动化环境搭建【MAC版】

    Appium简介 Appium是一个开源的.跨平台的测试框架,主要用来进行app UI自动化,适用于原生应用.混合应用和移动网页应用(H5页面).目前支持Python.JavaScript.Objec ...

  3. 迪杰斯特拉算法(Dijkstra)

    模板一: 时间复杂度O(n2) int dijkstra(int s,int m) //s为起点,m为终点 { memset(dist,,sizeof(dist)); //初始化,dist数组用来储存 ...

  4. Selenium:WebDriverApi接口详解

    浏览器操作 # 刷新 driver.refresh() # 前进 driver.forward() # 后退 driver.back() Cookie操作 # 根据cookieKey,获取cookie ...

  5. python的三种创建字典的方法

    #创建一个空字典 empty_dict = dict() print(empty_dict) #用**kwargs可变参数传入关键字创建字典 a = dict(one=,two=,three=) pr ...

  6. 在学react时候找不到static/js/bundle.js

    看如图上面bundle.js,我在项目中和配置文件中都没有找到这个JS文件,然后我就觉得很诧异,然后各种查找,终于找到一篇文章,在此记录一下 第一步:npm run start            ...

  7. 封装一个Js 对象 生成Json

    <script src="~/Content/Scripts/jquery-1.11.3.min.js"></script> <script> ...

  8. IIS 部署网站本地可访问,外网无法访问

    1,检查防火墙入站规则,查看本地端口状态 cmd 命令:netstat -na 2:远程连接测试 cmd 命令:telnet IP Port ,如:telnet 127.0.0.1 135 ,连接成功 ...

  9. kubernetes里面有时候centos源用不了

    kubernetes里面有时候centos源用不了,快速配一个阿里云的源. mkdir /etc/yum.repos.d/yangback;mv /etc/yum.repos.d/* /etc/yum ...

  10. hibernate保存数据到mysql时的中文乱码问题

    因为hibernate底层使用的是jdbc的技术,所以我参考了别人使用jdbc保存数据到mysql里面时解决乱码问题的方法! 首先要告诉数据库要插入的字符串的字符集,mysql 默认使用的字符集是 l ...