Django之ORM使用以及模板语言
一、ORM版增删改查
1、ORM的语句
1、类名.objects.all() --> 返回一个列表
2、类名.objects.filter() --> 返回一个列表
3、类名.objects.get() --> 返回一个对象
4、类名.objects.create(name='') --> 创建一个对象,返回的就是刚创建的对象
5、类名.objects.filter(id='').delete() --> 删除
6、obj = 类名.objects.get(id='')
obj.name = '新值' --> 修改对象的属性
obj.save() --> 把修改后的值同步到数据库
2、Django模板语言
1、for循环
{% for i in ret %}
{{ i }}
{{ forloop.counter }} --> for 循环从1开始计数
{{ forloop.counter0 }} --> for 循环从0开始计数
{% endfor %}
1 from django.shortcuts import render,redirect 2 from app01.models import Press 3 4 # Create your views here. 5 6 7 # 出版社列表函数 8 def press_list(request): 9 # 获取出版社数据库中的所有数据 10 ret = Press.objects.all() 11 # 用html展示出版社列表 12 return render(request,'press_list.html',{'ret':ret}) 13 14 15 # 添加出版社函数 16 def add_press(request): 17 # 判断是不是POST请求方法(form表单中) 18 if request.method == 'POST': 19 # 获取要添加的名字 20 new_name = request.POST.get('name') 21 # 在数据库中创建新的出版社 22 Press.objects.create(name=new_name) 23 # 跳转到出版社列表页面 24 return redirect('/press_list/') 25 # 跳转到添加页面 26 return render(request,'add_press.html') 27 28 29 # 删除出版社函数 30 def delete_press(request): 31 # 获取要删除出版社的ID 32 delete_id = request.GET.get('id') 33 # 根据获取的ID来删除数据库中对应的出版社 34 Press.objects.get(id=delete_id).delete() 35 # 跳转到出版社列表 36 return redirect('/press_list/') 37 38 39 # 编辑出版社函数 40 def edit_press(request): 41 # 获取要编辑的ID 42 edit_id = request.GET.get('id') 43 # 通过ID来获取对象 44 press_obj = Press.objects.get(id=edit_id) 45 # 判断是不是POST请求(form表单中) 46 if request.method == 'POST': 47 # 获取修改以后的name 48 edit_name = request.POST.get('name') 49 # 重新给name赋值 50 press_obj.name = edit_name 51 # 把修改以后的name更新到数据库 52 press_obj.save() 53 # 跳转到出版社列表 54 return redirect('/press_list/') 55 # 跳转到编辑页面 56 return render(request,'edit_press.html',{'press_obj': press_obj}) 57 58 views.py中所写的内容
views.py中的内容
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <meta name="viewport" content="width=device-width, initial-scale=1"> 6 <title>出版社页面</title> 7 <link rel="stylesheet" href="/static/bootstrap-3.3.7/css/bootstrap.css"> 8 <link rel="stylesheet" href="/static/font-awesome-4.7.0/css/font-awesome.css"> 9 <link rel="stylesheet" href="/static/bootstrap-sweetalert-master/dist/sweetalert.css"> 10 <script src="/static/bootstrap-sweetalert-master/dist/sweetalert.js"></script> 11 <script src="/static/jquery-3.3.1.min.js"></script> 12 <script src="/static/bootstrap-3.3.7/js/bootstrap.js"></script> 13 <style> 14 table { 15 16 border-spacing: 2px; 17 border-collapse: unset; 18 } 19 body{ 20 font-size: 16px; 21 } 22 </style> 23 </head> 24 <body> 25 <table border="1"> 26 <thead> 27 <tr> 28 <th>序号</th> 29 <th>id</th> 30 <th>name</th> 31 <th>操作</th> 32 </tr> 33 </thead> 34 <tbody> 35 {% for foo in ret %} 36 <tr> 37 <td>{{ forloop.counter }}</td> 38 <td>{{ foo.id }}</td> 39 <td>{{ foo.name }}</td> 40 <td> 41 <a href="/edit_press/?id={{ foo.id }}">编辑</a> 42 <a href="/delete_press/?id={{ foo.id }}">删除</a> 43 </td> 44 </tr> 45 {% endfor %} 46 </tbody> 47 </table> 48 <button class="btn-success btn"><a href="/add_press/" style="text-decoration: none;color: blue;">添加出版社</a></button> 49 </body> 50 </html>
press_list.html文件
转载于:https://www.cnblogs.com/wjs521/p/9716059.html
Django之ORM使用以及模板语言相关推荐
- python语言的格式框架_django框架模板语言使用方法详解
本文实例讲述了django框架模板语言使用方法.分享给大家供大家参考,具体如下: 模板功能 作用:生成html界面内容,模版致力于界面如何显示,而不是程序逻辑.模板不仅仅是一个html文件,还包括了页 ...
- django 模板mysql_59 Django基础三件套 , 模板{{}}语言 , 程序连mysql Django项目app Django中ORM的使用...
主要内容:https://www.cnblogs.com/liwenzhou/p/8688919.html 1 form表单中提交数据的三要素 a : form标签必须要有action和method的 ...
- Python的web框架Django(1):HTTP、简介、静态文件配置、路由系统、视图函数、模板语言、ORM、Ajax、分页器、forms、Cookie、Session、中间件、ModelForm
1. HTTP协议 1)HTTP请求协议 请求格式 POST(方法) /form/entry(URI) HTTP/1.1(协议版本) HOST:hackr.jp(服务端地址) Connection:k ...
- Django模板语言(译)
原文地址:https://docs.djangoproject.com/zh-hans/2.1/ref/templates/language/ 翻译日期:2019年3月8日-2019年3月9日 by: ...
- 第三百一十节,Django框架,模板语言
第三百一十节,Django框架,模板语言 模板语言就是可以将动态数据在html模板渲染的语言 一.接收值渲染 locals()函数,写在请求响应render()函数里,可以将逻辑处理函数里的变量传到h ...
- Django模板语言
常用语法 只需要记两种特殊符号: {{ }}和 {% %} 变量相关的用{{}},逻辑相关的用{%%}. 变量 {{ 变量名 }} 变量名由字母数字和下划线组成. 点(.)在模板语言中有特殊的含义, ...
- Django(模板语言-自定义filter和simple_tag)
filter过滤器的主要形式:变量|函数,意思是将变量交给函数处理,而自定义filter就是自己定义函数,因为用到已有的很少. 1.在当前app中创建templatetags模块(包:带__init_ ...
- Django模板语言中的自定义方法filter过滤器实现web网页的瀑布流
模板语言自定义方法介绍 自定义方法注意事项 Django中有simple_tag 和 filter 两种自定义方法,之前也提到过,需要注意的是 扩展目录名称必须是templatetags templa ...
- python框架django文档_Django基础——Django框架介绍及模板语言
Django框架,我们只需要关心二点: 1.根据用户访问不同的路径执行不同的函数 2.从HTML读取出内容,并且完成字符串的替换 而socket通信不需要我们自己写: 新建Django项目 命令行创建 ...
最新文章
- 最新!这所顶尖大学录取线全国第三!毕业生深造率超九成!
- jQuery源码学习之Callbacks
- Warm Up before Exercise
- boost::hana::to用法的测试程序
- netcore实践:跨平台动态加载native组件
- Ubuntu root账号的使用
- gitlab服务器代码存储位置,gitlab 数据目录迁移
- hoj 1640 Mobile phones //poj 1195 Mobile phones 二维树状数组
- 是否进行“ git导出”(如“ svn导出”)?
- 广东省汕头大学毕业设计论文撰写规范[2006]
- python和vb编程哪个好_自学编程是从python还是从vb好
- 解雇IE补丁操作方法
- 最新仿技术导航网源码 全开源自助友链系统
- 信息安全原理与技术第七次实验:木马攻击与防范
- 手机端访问本地编写的html页面【亲测有效】
- python怎么画长方形_画一个漂亮的长方形
- 透过案例看清API接口的作用——演示1688商品详情接口
- Anchor Boxes
- 卷积神经网络处理一维信号(故障诊断)
- 计算机病毒可通过u盘光盘网络传播,计算机病毒只能通过U盘与网络传播,光盘中不可能存在病毒。...