首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Django快速入门——投票程序(4,6)表单&界面、风格

Choice前添加一个单选按钮。...每个单选按钮的value属性是对应的各个Choice的ID。每个单选按钮的name是 "choice" 。...这意味着,当有人选择一个单选按钮并提交表单提交时,它将发送一个POST数据 choice=# ,其中#为选择的Choice的ID。这是 HTML表单的基本概念。...forloop.counter 指示for标签已经循环多少次。 由于我们创建一个POST表单(它具有修改数据的作用),所以我们需要小心跨站点请求伪造。Django 自带了一个非常有用的防御系统。...简而言之,所有针对内部URL的POST表单都应该使用 {% csrf_token %}模板标签。 现在,让我们来创建一个Django视图来处理提交的数据。

27920
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    checkbox(复选框)和radio(单选按钮)的区别与详解

    选中和取消 选中一个 checkbox(复选框) 后,再次点击它,即可取消选中 选中一个 radio(单选按钮) 后,再次点击它,不能取消选中 和多选 默认情况下(不设置name属性时),是点了几个 checkbox 就有几个 checkbox 被选中,所以严格来说,要实现 checkbox 的“单选”,就只能点击一个 checkbox,如果点击了多个...属性的值的影响的,具体可以看下面的演示和代码 <!...默认情况下(不设置name属性时),也是点了几个 radio 就有几个 radio 被选中,并且选中后再次点击不可取消选中,除非重置或者刷新页面等 但 radio 既然是单选按钮,肯定是可以实现单选的操作的...name 属性的值不相同来实现 如果有三个 radio 按钮,前两个的 name 属性的值是一样的,但第三个和前两个不一样,则前两个 radio 按钮,只能同时选中一个,第三个 radio 按钮可以和第一个或第二个同时被选中

    6K10

    django 1.8 官方文档翻译: 1-2-4 编写你的第一个Django应用,第4部分

    编写你的第一个 Django 程序 第4部分 本教程上接 教程 第3部分 。我们将 继续开发 Web-poll 应用并且关注在处理简单的窗体和优化我们的代码。... {% endfor %} 简单的总结下: 上面的模板中为每个投票选项设置了一个单选按钮...每个单选按钮的 value 是投票选项对应的 ID 。每个单选按钮的 name 都是 “choice”。...这意味着,当有人选择了一个单选按钮并提交了表单,将会发送 的 POST 数据是 choice=3。这是 HTML 表单中的基本概念。...总之,所有的 POST form 针对内部的 URLs 时都应该使用 {% csrf_token %} 模板标签。 现在,让我们来创建一个 Django 视图来处理提交的数据。 记得吗?

    1.5K10

    django入门:视图及模版

    ,因此 for 标签支持一个可选的 {% empty %} 分句 每个 {% for %} 循环里有一个称为 forloop 的模板变量,这个变量存在一些表示循环进度信息的属性,模板解析器碰到{% endfor...,支持可选的 {% else%} 标签;只有模板变量,字符串,整数和小数可以作为 {% ifequal %} 标签的参数 {% autoescape %}{% endautoescape %} 关闭代码块中的自动转义...对于字符串,返回字符串中字符的个数 safe,当系统设置 autoescaping 打开的时候,该过滤器使得输出不进行 escape 转换 striptags,删除 value 中的所有 HTML 标签.......... 6.django 自定义过滤器和标签 在应用目录下创建 templatetags 文件夹,同时建立空文件 __ init __.py 和过滤器文件 例如 custom_filter.py...是 template.Library 的实例,是所有注册标签和过滤器的数据结构 register = template.Libary() # 自定义过滤器 @register.filter def get_value

    1K20

    django基础之二

    URL的页面请求分发给不同的view处理,view再调用相应的Model和Template 三、Django的配置文件  3.1配置静态文件路径,为了django找到本地的文件         STATICFILES_DIRS...                可选的要传递给视图函数的默认参数(字典形式)                 一个可选的name参数    4.1、单一路由对应              url(r'...中的路由系统和其他语言的框架有所不同,在django中每一个请求的url都要有一条路由映射,这样才能将请求交给对一个的view中的函数去处理。...{% for %}标签允许你按顺序遍历一个序列中的各个元素,每次循环模板系统都会渲染{% for %}和{% endfor %}之间的所有内容 {% for obj in list %} forloop就消失了# 如果你的模板context已经包含一个叫forloop的变量,Django会用{% for %}标签替代它 # Django会在for标签的块中覆盖你定义的

    1.7K40

    Django 模板

    模板继承 父模板 子模板 父模板如何划分区域 Django 模板 模板传值取值 后端传值 键值对形式:{‘name’:value} 精准传值,用啥传啥 函数:locals() locals()将当前名称空间中所有的变量名全部传递给页面...'静态方法' obj = MyClass() return render(request,'func.html',locals()) 过滤器 模板语法:{{ 变量名 | 过滤器:可选参数...}} length 返回对象的长度,适用于字符串和列表 字典返回的是键值对的数量,集合返回的是去重后的长度 字符串:{{ my_str|length }} 列表:{{ my_list|length...{% endif %} for 标签 每一次循环中,模板系统会渲染在 {% for %} 和 {% endfor %} 之间的所有内容; 模板语法for循环和python 的for循环类似,支持in from...网页的头部和尾部内容一般都是一致的,我们就可以通过模板继承来实现复用。 父模板用于放置可重复利用的内容,子模板继承父模板的内容,并放置自己的内容。

    4.8K10

    django2.0入门教程第四节

    继上篇 django2.0入门教程第三节,介绍了django2.0的视图views和模板template, 本节介绍如何在前台进行投票。...将问题的相关选项遍历,以单选框显示 form表单用post方式提交数据 配置url polls/urls.py path('/vote/', views.vote, name...result.png 优化url和view写法 另一种写法: 将主键id代替question_id polls/urls.py #_*_coding:utf8_*_ from django.urls...,vote方法保持原样,用于比较两种写法的不同 polls/views.py #_*_coding:utf8_*_ from django.shortcuts import render, get_object_or...入门教程不会对代码进入深入的讲解,先大致了解其作用即可,后续再逐个模块进行解析 源码下载 相关源码包 如果对django2.0教程感兴趣,请关注我的简书,持续更新中...

    78120

    35.Django2.0文档

    每一次循环中,模板系统会渲染在 {% for %} 和 {% endfor %} 之间的所有内容。...M:数据存取部分,由django数据库层处理,本章要讲述的内容。   V:选择显示哪些数据要显示以及怎样显示的部分,由视图和模板处理。   ...)、模板(Template)和视图(Views),Django 也被称为MTV 框架。...3.设置字段可选  你或许会发现管理工具有个限制:编辑表单需要你填写每一个字段,然而在有些情况下,你想要某些字段是可选的。 举个例子,我们想要Author模块中的email字段成为可选,即允许不填。...第七章 用户、用户组和权限 因为你是用超级用户登录的,你可以创建,编辑和删除任何对像。 然而,不同的环境要求有不同的权限,系统不允许所有人都是超级用户。

    11.3K100

    Django基础教程

    可选的要传递给视图函数的默认参数(字典形式) 一个可选的name参数 ''' 2.1 URLconf的正则字符串参数 1、单一路由对应 url(r'^index$', views.index...django.conf.urls.url()函数可以接受一个可选的第三个参数,它是一个字典,表示想要传递给视图函数的额外关键字参数。...}和{% endif %}间的所有内容 {% if num >= 100 and 8 %} {% if num > 200 %} num大于200 {%...{% for %}标签允许你按顺序遍历一个序列中的各个元素,每次循环模板系统都会渲染{% for %}和{% endfor %}之间的所有内容 {% for obj in list %}...,当模板解析器到达{% endfor %}时forloop就消失了 # 如果你的模板context已经包含一个叫forloop的变量,Django会用{% for %}标签替代它 # Django会在for

    7.4K20

    七日Python之路--第十二天(Django Web 开发指南)

    (7)使用模型 Django项目中 manage.py 脚本包含了操作数据库的功能。syncdb只能保证所有模型类都有对应的数据库表,但不会修改已经存在的数据库表。...P (16)Django的模板 模板是一种独立的文本文件,同时还包含了静态的内容和动态标记的逻辑,循环和数据显示等。...}} (19)表单 Django提供了forms库把框架里的三个主要组件联系在一起:模型定义的数据库字段,模板里显示的HTML表单标签,还有检验用户输入和显示错误信息的能力。...save()方法接受一个可选的参数 “ commit ”默认为“ True ”。...当有关联对象时,Django会给表单添加一个额外的方法 save_m2m (21)区别于Model ModelForm的Meta嵌套类允许你定义两个可选属性,fields和exclude

    1.8K20

    Django之模板系统

    比如使用逗号和空格去连接一个列表中的元素,如:{{ list|join:', ' }} '|'左右没有空格没有空格没有空格   Django的模板语言中提供了大约六十个内置过滤器。   ...safe     Django的模板中在进行模板渲染的时候会对HTML标签和JS等语法标签进行自动转义,原因显而易见,这样是为了安全,django担心这是用户添加的数据,比如如果有人给你评论的时候写了一段...采用一个可选参数,它是一个包含用作比较点的日期的变量(不带参数,比较点为现在)。...使用可选参数,它是一个包含用作比较点的日期(而不是现在)的变量。...for ... empty     for 标签带有一个可选的{% empty %} 从句,以便在给出的组是空的或者没有被找到时,可以有所操作。

    1.3K20

    Django学习之旅(三)

    这其中url()函数具有四个参数, regex和view是必填选项,kwargs和name是非必填选项 regex: 正则表达式的缩写。...这样就可以在Django的其它地方尤其是模板中,通过名称来明确地引用这个URL。 这个强大的特性可以使你仅仅修改一个文件就可以改变全局的URL模式。 2 模板 学到这里,你会许会有个疑问。...该函数有三个参数,将请求对象作为它的第一个参数,模板的名字作为它的第二个参数,一个字典作为它可选的第三个参数。 它返回一个HttpResponse对象,含有用给定的context 渲染后的模板。 ?...Django模板算是利器,它具有循环、条件判断、常用的标签、过滤器等功能,这能消除我们的刚才的烦恼。 首先,我们应该知道两个知识点。分别是: 1)标签的写法: 使用{% 标签 %}, 例如 ?...索引从最大长度到 1 forloop.revcounter0 索引从最大长度到 0 forloop.first 当遍历的元素为第一项时为真 forloop.last 当遍历的元素为最后一项时为真 forloop.parentloop

    50010

    Django Web开发基础知识

    模型(M),控制器(C)和视图(V)三层,他们之间以一种插件式的、松耦合的方式连接在一起: A.模型负责业务对象与数据库的映射(ORM) B.视图负责与用户的交互(页面) C.控制器接受用户的输入调用模型和视图完成用户的请求...Django的MTV模式本质上和MVC是一样的,也是为了各组件间保持松耦合关系,只是定义上有些许不同,Django的MTV分别是值: M 代表模型(Model): 负责业务对象和数据库的关系映射(ORM...分割URL和传输数据,参数之间以&相连,POST方法是把提交的数据放在HTTP包的Body中. GET提交的数据大小有限制(因为浏览器对URL的长度有限制),而POST方法提交的数据没有限制....#导出数据 python manage.py loaddata #导入数据 python manage.py diffsettings #查看你的配置和django...0 forloop.first 当遍历的元素为第一项时为真 forloop.last 当遍历的元素为最后一项时为真 forloop.parentloop 用在嵌套的 for 循环中,获取上一层

    2.2K20

    Python自动化开发学习20-Djan

    ,另外是把所有需要提交的input和select标签加上了id属性,方便用比较简单的逻辑来获取到属性。...示例-删除功能 要做删除功能,需要在表格的每一行增加一列,放置按钮。顺便把编辑按钮也一起加上,稍后再绑定事件。...直接把之前的删除的div复制一份。把class改掉。 页面里的所有元素的id也都要改,id不能重复,这里不用id了都删掉。 提交按钮也不要了,Ajax提交要的并且起一个新的id名。...取消按钮把id换成class,删除页面的取消按钮和jQuery的绑定操作哪里也相应的修改一下 编辑用户 的所有的name和对应的值一次获取到。 例子中还有个问题,就是还要提交一个uid,这个uid不在表单里。这里有两个方法。

    2.6K10

    Django 学习笔记之模板

    2.2 for 标签 {% for %} 标签允许我们遍历一个序列上的每一项。在每一次循环中,模板系统会渲染在 {% for %} 和 {% endfor %} 之间的所有内容。...在每个 {% for %}循环中有一个被称为 ** forloop ** 的模板变量。这变量提供一些带有循环进度信息的属性。 forloop.counter 表示当前循环的执行次数的总数。...forloop.counter0 类似于 forloop.counter ,但是它是从0计数的。 第一次执行循环时这个变量会被设置为0。...forloop.revcounter0 类似于 forloop.revcounter ,但它以0做为结束索引。因此,第一次循环执行的时候,该变量的值为 序列的长度减 1。...{% ifequal %} 标签比较两个值,当它们相等时,显示在 {% ifequal %} 和 {% endifequal %} 之中所有的值。

    2K00
    领券