一、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使用以及模板语言相关推荐

  1. python语言的格式框架_django框架模板语言使用方法详解

    本文实例讲述了django框架模板语言使用方法.分享给大家供大家参考,具体如下: 模板功能 作用:生成html界面内容,模版致力于界面如何显示,而不是程序逻辑.模板不仅仅是一个html文件,还包括了页 ...

  2. django 模板mysql_59 Django基础三件套 , 模板{{}}语言 , 程序连mysql Django项目app Django中ORM的使用...

    主要内容:https://www.cnblogs.com/liwenzhou/p/8688919.html 1 form表单中提交数据的三要素 a : form标签必须要有action和method的 ...

  3. 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 ...

  4. Django模板语言(译)

    原文地址:https://docs.djangoproject.com/zh-hans/2.1/ref/templates/language/ 翻译日期:2019年3月8日-2019年3月9日 by: ...

  5. 第三百一十节,Django框架,模板语言

    第三百一十节,Django框架,模板语言 模板语言就是可以将动态数据在html模板渲染的语言 一.接收值渲染 locals()函数,写在请求响应render()函数里,可以将逻辑处理函数里的变量传到h ...

  6. Django模板语言

    常用语法 只需要记两种特殊符号: {{  }}和 {% %} 变量相关的用{{}},逻辑相关的用{%%}. 变量 {{ 变量名 }} 变量名由字母数字和下划线组成. 点(.)在模板语言中有特殊的含义, ...

  7. Django(模板语言-自定义filter和simple_tag)

    filter过滤器的主要形式:变量|函数,意思是将变量交给函数处理,而自定义filter就是自己定义函数,因为用到已有的很少. 1.在当前app中创建templatetags模块(包:带__init_ ...

  8. Django模板语言中的自定义方法filter过滤器实现web网页的瀑布流

    模板语言自定义方法介绍 自定义方法注意事项 Django中有simple_tag 和 filter 两种自定义方法,之前也提到过,需要注意的是 扩展目录名称必须是templatetags templa ...

  9. python框架django文档_Django基础——Django框架介绍及模板语言

    Django框架,我们只需要关心二点: 1.根据用户访问不同的路径执行不同的函数 2.从HTML读取出内容,并且完成字符串的替换 而socket通信不需要我们自己写: 新建Django项目 命令行创建 ...

最新文章

  1. 最新!这所顶尖大学录取线全国第三!毕业生深造率超九成!
  2. jQuery源码学习之Callbacks
  3. Warm Up before Exercise
  4. boost::hana::to用法的测试程序
  5. netcore实践:跨平台动态加载native组件
  6. Ubuntu root账号的使用
  7. gitlab服务器代码存储位置,gitlab 数据目录迁移
  8. hoj 1640 Mobile phones //poj 1195 Mobile phones 二维树状数组
  9. 是否进行“ git导出”(如“ svn导出”)?
  10. 广东省汕头大学毕业设计论文撰写规范[2006]
  11. python和vb编程哪个好_自学编程是从python还是从vb好
  12. 解雇IE补丁操作方法
  13. 最新仿技术导航网源码 全开源自助友链系统
  14. 信息安全原理与技术第七次实验:木马攻击与防范
  15. 手机端访问本地编写的html页面【亲测有效】
  16. python怎么画长方形_画一个漂亮的长方形
  17. 透过案例看清API接口的作用——演示1688商品详情接口
  18. Anchor Boxes
  19. 卷积神经网络处理一维信号(故障诊断)
  20. 计算机病毒可通过u盘光盘网络传播,计算机病毒只能通过U盘与网络传播,光盘中不可能存在病毒。...

热门文章

  1. 监听程序配制及数据备份
  2. java学习与总结:反射及动态代理
  3. 禁用人脸识别四个月后,旧金山人证明了他们的先见之明
  4. 对于这些机器学习算法 数学不好你还真看不懂
  5. matlab与音频处理
  6. 制造业与计算机有关的岗位,天津人力资源:零批餐饮挺缺人 银行地产岗位少...
  7. 判断比较器Comparator和Comparable的升序降序问题
  8. 006_html元素
  9. cf网络原因服务器无响应,CF由于网络原因连接服务器失败请重试 1033_10136
  10. 刘晓艳2021英语语法句型结构总结1之简单句型结构