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

django 1.8 官方文档翻译: 5-1-1 使用表单

Django 中的表单 我们已经简短讲述HTML 表单,但是HTML的 只是机制的一部分。...然而,因为CSRF 防护模板中不是表单直接捆绑在一起的,这个标签在这篇文档的以下示例中将省略。...有些字段类型需要一些额外的处理。例如,使用表单上传的文件需要不同地处理(它们可以从request.FILES 获取,不是request.POST)。...迭代隐藏和可见的字段 如果你正在手工布局模板中的一个表单不是依赖Django 默认的表单布局,你可能希望将 字段与非隐藏的字段区别对待。...例如,因为隐藏的字段不会显示字段旁边放置错误信息可能让你的用户感到困惑 —— 所以这些字段的错误应该有区别地来处理。

4.2K20

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

上面那特定的更改使得 “Publication date” 字段 “Question” 字段之前: 仅有两个字段不会令你印象深刻,但是对于有许多字段的管理表单时,选择一个直观 的排序方式是一个重要的实用细节...Django 知道 ForeignKey 管理网站中以 框显示本例中,选择框中仅存在一个 poll 。 另外请注意 Poll 旁边的 “Add Another” 链接。...使用了 TabularInline 后(不是 StackedInline) ,基于表的格式下相关 对象被显示的更紧凑了: 需要注意的是有个额外的 “Delete?”...我们的 poll 应用不是很复杂并不需要自定义管理模板。但是如果它变得更复杂 而且为了一些功能需要修改 Django 的标准管理模板,修改应用模板将是更 明智的选择,不是修改项目模板。...这个变量包含了每一个 已安装的 Django 应用。你可以通过你认为最好的方法硬编码链接到特定对象的管理页面,不是使用默认模板。

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

Django学习笔记之Django Form表单详解

知识预览 构建一个表单 Django 中构建一个表单 Django Form 类详解 使用表单模板 回到顶部 构建一个表单 假设你想在你的网站上创建一个简单的表单,以获得用户的名字。...2 方便地限制字段条件 回到顶部 Django 中构建一个表单 Form 类 我们已经计划好了我们的 HTML 表单应该呈现的样子。...我们必须自己模板中提供它们。 视图 发送给Django 网站的表单数据通过一个视图处理,一般和发布这个表单的是同一个视图。这允许我们重用一些相同的逻辑。...我们没有必要非要让Django 来分拆表单字段;如果我们喜欢,我们可以手工来做(例如,这样允许重新对字段排序)。...帮助信息(标签旁边显示) error_messages=None, 错误信息 {'required': '不能为空', 'invalid': '格式错误'} show_hidden_initial

4.6K10

关于“Python”的核心知识点整理大全55

这些工作很多都是由 Django自动完成的。 Django中,创建表单的最简单方式是使用ModelForm,它根据我们第18章定义的模型中 的信息自动创建表单。...最简单的ModelForm版本只包含一个内嵌的Meta类,它告诉Django根据哪个模型创建表单,以 及表单中包含哪些字段。...处,我们根据模型Topic创建一个表单,该表单只包含字段text (见)。处的代码让Django不要为字段text生成标签。 2....用户初次请求该网页时,浏览器将发送GET请求; 用户填写并提交表单时,浏览器将发送POST请求。...函数is_valid() 核实用户填写了所有必不可少的字段表单字段默认都是必不可少的),且输入的数据与要求的 字段类型一致(例如,字段text少于200个字符,这是我们第18章中的models.py

12510

第 14 篇:交流的桥梁“评论功能”—— HelloDjango 系列教程

此外, 博客从“裸奔”到“有皮肤”[3] 中提过,所有模型的字段都接受一个 verbose_name 参数(大部分是第一个位置参数),django 根据模型的定义自动生成表单时,会使用这个参数的值作为表单字段的...django表单功能就是帮我们完成上述所说的表单处理逻辑,表单django 来说是一个内容丰富的话题,很难通过教程中的这么一个例子涵盖全部用法。...fields = ['name', 'email', 'url', 'text'] 指定了表单需要显示字段,这里我们指定了 name、email、url、text 需要显示。...,然而不同的是,这里我们传入由视图函数 comment 传来的绑定了用户提交的数据的表单实例 form,不是渲染一个空表单。...,不是一个空的表单了。

1.6K20

django 1.8 官方文档翻译:5-1-2 表单API

这些值只显示没有绑定的表单中,即使没有提供特定值它们也不会作为后备的值。 注意,如果字段有定义initial, 实例化表单时也提供initial,那么后面的initial 将优先。...每个字段都知道自己的“空”值 —— 例如,DateField 的空值是None 不是一个空字符串。关于每个字段空值的完整细节,参见“内建的Field 类”一节中每个字段的“空值”提示。...再次提醒,这些只是默认的表示;你可以手工指定标签。 每个文本标签周围有一个HTML 标签,它指向表单字段的id。这个id,是通过字段名称前面加上'id_' 前缀生成。...字段的顺序 as_p()、as_ul() 和as_table() 中,字段表单类中定义的顺序显示。...class BoundField 用于显示HTML 表单或者访问表单实例的一个属性。 __str__()(Python 2 上为__unicode__)方法显示字段的HTML。

2.7K30

python-Django-Django 表单简介

定义表单Django中,表单类是使用Python类定义的。表单类通常是从Django中的forms.Form类派生而来。定义表单类时,我们需要为每个要显示表单字段定义一个类属性。...每个字段都是一个Django表单字段类的实例,用于定义该字段的类型、验证规则以及模板中显示字段的方式。...例如,我们可以使用label属性指定字段标签文本,使用max_length属性指定文本字段的最大长度,使用widget属性指定该字段模板中的呈现方式。...模板中显示表单Django中,我们可以使用模板系统来渲染表单并在Web页面中显示它们。为了模板中显示表单,我们需要将表单类实例化,并将其作为上下文变量传递到渲染模板的函数中。...如果HTTP方法不是POST,我们实例化表单类,并将其作为上下文变量传递给渲染模板的函数。

1.5K20

python-Django-表单基础概念

定义表单Django中,表单类是定义表单字段和验证规则的Python类。每个表单字段都映射到一个HTML表单元素,并具有相应的验证规则。...表单类继承自django.forms.Form类,并定义一个或多个表单字段。每个表单字段都是一个Field类的实例,它定义了字段的类型、标签、验证规则等。...模板中显示表单要在模板中显示表单,您需要将表单类实例化,并将其传递到模板上下文中。然后,模板中使用Django模板语言(DTL)来呈现表单字段。...as_p标记以HTML段落()的形式显示表单字段,每个字段都有一个标签和一个表单元素。还需要注意的是,我们表单中包含了一个csrf_token标记。...这是Django防止跨站请求伪造(CSRF)攻击的一种机制,它生成一个隐藏的表单字段,其中包含一个随机的令牌值。处理表单提交时,Django将检查令牌是否有效。

1.2K51

Django 学习笔记之表单

本篇内容主要是讲解表单。 1 表单是什么? 表单英文单词是 Forms, 它其实属于 HTML 的知识范畴。HTML 表单可以实现用户和 Web 站点之间数据交互。...表单中会根据页面显示需求,采用不同的表单元素来呈现,比如:文本域(textarea)、下拉列表、单选框(radio-buttons)、复选框(checkboxes)等等 它可能长得这个样子 表单使用标签...model 中指定的字段 3.3 视图层的处理 视图文件 view.py 中, 可以获取、过滤到用户提交的数据。...如: form 中定义了 DateTimeField ,那么该字段将被转换为 datetime 类型。 模板文件内容则比较简单,使用几个 HTML 标签以及模板标签就轻松搞定。 <!...Django 默认提供几种显示表单的方式。例如form.as_p、form.as_table、form.as_ul, html 文件中会被渲染成 p 标签,table 标签和 ul 标签

2.5K30

django 1.8 官方文档翻译:5-1-4 内建的Widget

表单字段负责验证输入并直接在模板中使用。Widget 负责渲染网页上HTML 表单的输入元素和提取提交的原始数据。但是,Widget 需要赋值给表单字段。...指定Widget 每当你指定表单的一个字段的时候,Django 将使用适合数据类型的默认Widget。若要查找每个字段使用的Widget,参见内建的字段文档。...() comment = forms.CharField(widget=forms.Textarea) 这将使用一个Textarea Widget来设置表单的评论 ,不是默认的TextInput...外层的 将带有定义Widget 上的id 属性。 Changed in Django 1.7: 当迭代单选按钮时,label 和input 标签分别包含for 和id 属性。...>,带有一个额外的复选框,如果该字段不是必选的且有初始的数据,可以清除字段的值。

5K40

django实战:实现简单的文件上传功能

上周进行这一部分学习的时候折腾了好久,今天把过程给大家分享出来,希望对大家的学习有些帮助。 软件版本 Django:1.10.2+Python3.6+pycharm2016.1.4。...(一般用于传输二进制文件(图片、视频)) {% csrf_token %}: 跨域请求,我们需要在表单标签的内部加上这个模板标签,而且要在views.py中配合render不是render_to_response...{{ uf.as_p }}:这样一次性可以把表单里的所有字段显示处理 显示结果 提交表单后 补充form显示单个元素 {{ field.label_tag }}: {{ field }} 比如我的form...那么就是这样写: {{ form.qq.label_tag }}#表示form 里面定义这个字段的名称 {{ form.qq }}#根据这个字段form定义的类型来决定。假设是char类型。...那就是文本框 {{ form.qq.errors.as_text }}表示如果表单字段验证失败的话,这个代表错误信息 {{ form.qq.help_text }}如果你form里定义了这个字段的帮助信息的话

95040

Form和ModelForm组件

Form介绍  我们之前HTML页面中利用form表单向后端提交数据时,都会写一些获取用户输入的标签并且用form标签把它们包起来。...使用选择标签时,需要注意choices的选项可以配置从数据库中获取,但是由于是静态字段 获取的值无法实时更新,需要重写构造方法从而实现choice实时更新。...initial=None, 初始值 help_text='', 帮助信息(标签旁边显示) error_messages...局部钩子 我们Fom类中定义 clean_字段名() 方法,就能够实现对特定字段进行校验。...举个例子,你也许会有个Book 模型,并且你还想创建一个form表单用来添加和编辑书籍信息到这个模型中。 在这种情况下,form表单中定义字段将是冗余的,因为我们已经模型中定义了那些字段

5K10

用户不填表?那是因为你没用好这7个设计准则

另一件事是,当用户看到一个文本框里面写的,他们可能会认为它已经预先填写并可能因此忽略它。 为什么要左对齐字段标签对无线端表单设计是不好的 左对齐字段标签的主要问题涉及手机显示屏尺寸和宽高比。...标签上方字段或浮动标签 表单标签应高于表单域,使用户可以很容易地看到他们,为什么都尽显。...放置标签上移动领域以上的主要好处是,你可以有表单字段延长屏幕的整个宽度,使它们足够大,以显示整个用户的输入(一个体面的字体大小16像素一样)。...例如,当用户需要输入信用卡号码,只显示拨号盘,输入限制到数字和不字符。这将减少他们的选择和错误,并加速完成。 ? 确保这是整个应用程序,不是只针对某些任务不是其他一致的实现。...如果正在要求用户输入的数字信息(诸如电话号码)转换成一种形式,是柔性的,和设计的屏幕,可以解释多个输入格式和显示的方式,很容易可扫描的信息(人类,不是机器)中为了防止出错。不要使用固定的输入格式。

1.8K60

​第 07 篇:创作后台开启,请开始你的表演!

,以及发布文章的时候,表单字段的 label 也是英文的。...例如文章发布时间 created_time 和修改时间 modified_time,应该在创建或者修改文章时自动生成,不是手动控制。...如下图所示: 其次是新增 post 页面的表单,各个字段的 label 由定义 Post 类的 Field 名转换而来,比如 Post 模型中定义了 title 字段,则对应表单的 label 就是...文章的创建时间和修改时间应该根据当前时间自动生成,现在是由人工填写,还有就是文章的作者应该自动填充为后台管理员用户,那么这些自动填充数据的字段就不需要在新增文章的表单中出现了。...因为 timezone 模块中的函数会自动帮我们处理时区,所以我们使用的是 django 为我们提供的 timezone 模块,不是 Python 提供的 datetime 模块来处理时间。

1.1K20

Django 1.10中文文档-第一个应用Part7-自定义管理站点

你可以注册时通过配置来实现。 现在先来试试重新排序表单上的字段。...并且字段数据很多时,还可以将表单分割成多个字段的集合: # polls/admin.py from django.contrib import admin from .models import Question...如果我们想要同时显示一些别的内容,可以使用list_display属性,它是一个由多个字段组成的元组,其中的每一个字段都会按顺序显示页面上,代码如下: # polls/admin.py class...最好每一个模板都应该存放在它所属应用的模板目录内(例如polls/templates)不是整个项目的模板目录(templates),因为这样每个应用才可以被方便和正确的重用。...最好每一个模板都应该存放在它所属应用的模板目录内(例如polls/templates)不是整个项目的模板目录(templates),因为这样每个应用才可以被方便和正确的重用。

3.6K60
领券