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

django 1.8 官方文档翻译: 3-4-3 使用基于视图处理表单

使用基于视图处理表单 表单处理通常有3 个步骤: 初始GET (空白或预填充表单) 带有非法数据POST(通常重新显示表单和错误信息) 带有合法数据POST(处理数据并重定向) 你自己实现这些功能经常导致许多重复样本代码...为了避免这点,Django 提供一系列通用基于视图用于表单处理。...这些通用视图将自动创建一个ModelForm,只要它们能知道使用哪一个模型: 如果给出model属性,则使用该模型。 如果get_object() 返回一个对象,则使用该对象。...如果给出queryset,则使用该查询集模型。 模型表单提供一个form_valid() 实现,它自动保存模型。如果你有特殊需求,可以覆盖它;参见下面的例子。...注意这里我们是如何配置通用基于视图;我们自己没有写任何逻辑: #views.py from django.views.generic.edit import CreateView, UpdateView

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

Django(1)初识Django「建议收藏」

Django采用了MTV框架模式,即模型Model、模板Template和视图(Views),三者之间各自负责不同职责。...Django基于MTV设计十分优美,其具有以下特点: 对象映射关系(Object Relational Mapping, ORM):通过定义映射来构建数据模型,将模型与关系数据库连接起来,使用ORM...URL设计:开发者可以设计任意URL(网站地址),而且还支持使用正则表达式设计 模板系统:提供可扩展模板语言,模板之间具有可继承性 表单处理:可以生成各种表单模型,而且表单具有有效性检验功能 Cache...()现在返回一个列表,包含插入失败键值 视图:ContextMixin,extra_context属性允许在View.as_view()添加上下文 Pagination(分页):增加Paginator.get_page...()`,可以处理各种非法页面参数,防止异常 Templates(模板):提高Engine.get_default()在第三方模块用途 Vaildators(验证器):不允许CharField及其子类表单输入为空

2.7K20

浅谈Python Django框架

1、Django简介 Python下有多款不同 Web 框架,Django是最有代表性一种。许多成功网站和APP都基于Django。...3、Django项目目录 1) urls.py:网址入口,关联到对应views.py一个函数(或generic),访问网址就对应一个函数。...4) forms.py:表单,用户在浏览器上输入数据提交,对数据验证工作以及输入生成等工作,也可以不使用。...② view:用于执行与正则表达式匹配 URL 请求。 ③ kwargs:视图使用字典类型参数。 ④ name:用来反向获取 URL。...(max_length=20)   名代表了数据库表名,且继承了models.Model,面的字段代表数据表字段(name),数据类型则由CharField(相当于varchar)、DateField

2.2K20

浅谈Python Django框架

来源:码农程序 ID:PyExChange 1、Django简介 Python下有多款不同 Web 框架,Django是最有代表性一种。许多成功网站和APP都基于Django。...3、Django项目目录 1) urls.py:网址入口,关联到对应views.py一个函数(或generic),访问网址就对应一个函数。...4) forms.py:表单,用户在浏览器上输入数据提交,对数据验证工作以及输入生成等工作,也可以不使用。...② view:用于执行与正则表达式匹配 URL 请求。 ③ kwargs:视图使用字典类型参数。 ④ name:用来反向获取 URL。...(max_length=20) 名代表了数据库表名,且继承了models.Model,面的字段代表数据表字段(name),数据类型则由CharField(相当于varchar)、DateField

2.4K20

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

当前,只有超级用户能够通过管理网站输入数据。我们不想让用户与管理网站交互,因此我 们将使用Django表单创建工具来创建让用户能够输入数据页面。...创建基于表单面的方法几乎与前面创建网页一样:定义 一个URL,编写一个视图函数并编写一个模板。一个主要差别是,需要导入包含表单模块 forms.py。 1....用于添加主题表单 让用户输入并提交信息页面都是表单,那怕它看起来不像表单。用户输入信息时,我们需 要进行验证,确认提供信息是正确数据类型,且不是恶意信息,中断服务器代码。...在Django,创建表单最简单方式是使用ModelForm,它根据我们在第18章定义模型 信息自动创建表单。...最简单ModelForm版本只包含一个内嵌Meta,它告诉Django根据哪个模型创建表单,以 及在表单包含哪些字段。

12810

Django实战-信息资讯-登录验证

Django网络应用开发5项基础核心技术包括模型(Model)设计,URL设计与配置,View(视图编写,Template(模板)设计和Form(表单)使用。...生鲜电商采用是直接处理 POST 请求过来数据,判断字段是否都存在,而没有进行字段再一次验证,比如对手机号码长度要求和输入是否为正确手机号。...① 对表单验证错误消息提示 在编写 form 表单验证之前,可以先定义一个验证错误消息提示 mixin 。这样就给需要验证字段提供了前端页面的错误提示。...View (视图) 主要根据用户请求返回数据,用来展示用户可以看到内容(比如网页,图片),也可以用来处理用户提交数据,比如保存到数据库。...基于视图(View) from django.views.generic import View from django.contrib.auth import authenticate, login

65720

Django 构建模板form表单两种方法

django是如何在模板文件中生成form表单: 1、自定义显示字段: 假如我们要在模板中生成一张含有username和content表单 在app下新建forms.py(/users/forms.py...max_length=5) #max_length 浏览器限制用户输入字符串长度 content = forms.CharField(label='留言', max_length=100) 在视图文件引用上边表单字段并传递给模板...= Lesson fields = ['add_time', 'name', 'learn_times'] #要显示字段 在视图文件引用上边表单字段并传递给模板(users/view.py) from...所有表单都作为 django.forms.Form 或者 django.forms.ModelForm 子类来创建。您可以把 ModelForm 想象成 Form 子类。...到此这篇关于Django 构建模板form表单两种方法文章就介绍到这了,更多相关Django 构建模板form表单两种方法内容请搜索ZaLou.Cn以前文章或继续浏览下面的相关文章希望大家以后多多支持

1.6K20

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

使用表单 关于这页文档 这页文档简单介绍Web 表单基本概念和它们在Django 是如何处理。关于表单API 某方面的细节,请参见表单 API、表单字段和表单和字段检验。...除非你计划构建网站和应用只是发布内容而不接受访问者输入,否则你将需要理解并使用表单Django 提供广泛工具和库来帮助你构建表单来接收网站访问者输入,然后处理以及响应输入。...(ModelForm通过一个Form 映射模型字段到HTML 表单元素;Django Admin 站点就是基于这个)。...表单字段在浏览器呈现给用户是一个HTML “widget” —— 用户界面的一个片段。每个字段类型都有一个合适默认Widget ,需要时可以覆盖。...更深入主题 这里只是基础,表单还可以完成更多工作: 表单集 在表单集中使用初始化数据 限制表单最大数目 表单验证 验证表单集中表单数目 处理表单排序和删除 添加额外字段到表单视图和模板中视图表单

4.2K20

框架分析(5)-Django

Django使用ORM(对象关系映射)来处理数据库操作,使开发人员可以使用Python代码来定义模型,并且不需要直接编写SQL语句。 视图(View) 视图Django处理请求函数或。...当用户发出请求时,Django会根据URL配置将请求路由到相应视图函数或中进行处理。视图函数或可以从模型获取数据,并将数据渲染到模板,最终返回给用户。...模板(Template) 模板是Django中用于呈现数据部分。它使用简单标记语言来定义HTML页面的结构和内容,并可以通过模板标签和过滤器来操作数据。...表单(Form) 表单Django中用于处理用户输入数据组件。开发人员可以使用Django表单来定义表单字段和验证规则。...Django会自动处理表单验证、错误提示和数据存储等操作,简化了开发人员处理用户输入过程。

15620

登录

引入内置 URL 模型 Django 内置登录、修改密码、找回密码等视图函数对应 URL 模式位于 django.contrib.auth.urls.py ,首先在工程 urls.py 文件里包含这些...但有些表单错误不和任何具体字段相关,比如用户输入用户名和密码无法通过验证,这可能是用户输入用户名不存在,也可能是用户输入密码错误,因此这个错误信息将通过 {{ form.non_field_errors...此外登录表单 action 属性值是 {% url 'login' %},即 auth 应用下 login 视图函数对应 URL,用户提交表单数据将提交给这个 URL,Django 调用 login...image.png 故意使用一个不存在账户登录,或者故意输错密码,你将看到表单渲染非字段相关错误。...如何在模板判断用户是否已经登录 在模板判断用户是否已经登录非常简单,使用 {% if user.is_authenticated %} 条件判断即可。借此机会,我们来处理一下网站首页。

3.8K50

37.Django1.11.6文档

my_object = get_object_or_404(MyModel, pk=1)  2.基于视图 基于视图使用Python 对象实现视图,它提供除函数视图之外另外一种方式。...虽然基于视图最小实现不需要任何类属性来完成它功能,但是在许多基于设计类属性非常重要,有两种方式来设置类属性。 第一种方式是Python 标准方式,子类化并在子类覆盖属性和方法。...更多-->>http://usyiyi.cn/translate/Django_111/topics/class-based-views/mixins.html 4.装饰基于视图 基于视图扩展不仅仅局限于使用...你还可以使用装饰器。 由于基于视图不是函数,对它们装饰取决于你使用as_view() 还是创建一个子类。...return kwargs 在视图和模板中使用表单集 在视图使用表单集就像使用标准Form 一样简单, 唯一要做就是确信你在模板处理表单

24.3K80

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

它所言,我们确实还没有发布任何文章,本节我们将使用 django 自带 admin 后台来发布我们博客文章。...在支持 Markdown 语法部分中将介绍如何在文章插入图片方法。...如下图所示: 其次是新增 post 页面的表单,各个字段 label 由定义在 Post Field 名转换而来,比如 Post 模型定义了 title 字段,则对应表单 label 就是...发布文章过程实际上是一个 HTTP 请求过程,此前提到,django 将 HTTP 请求封装在 HttpRequest 对象,然后将其作为第一个参数传给视图函数(这里我们没有看到新增文章视图,因为...因为 timezone 模块函数会自动帮我们处理时区,所以我们使用django 为我们提供 timezone 模块,而不是 Python 提供 datetime 模块来处理时间。

1.1K20

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

/materials/60/ ""空空也"博客应用") 已经有过详细介绍)。...注意这里注册是 CommentsConfig ,在 博客从“裸奔”到“有皮肤”[1] 中曾经讲过如何对应用做一些初始化配置,例如让 blog 应用在 django admin 后台显示中文名字。...我们知道每一个 URL 对应着一个 django 视图函数,于是 django 调用这个视图函数,我们在视图函数写上处理用户通过表单提交上来数据代码,比如验证数据合法性并且保存数据到数据库,...然后我们就可以在 detail.html 中使用这个模板标签来渲染表单了,注意在使用记得先 {% load comment_extras %} 这个模块。...,首先尝试输入非法格式数据,例如将邮箱输入为 xxx@xxx,那么评论视图在校验表单数据合法性时,发现邮箱格式不符,就会渲染 preview 页面,展示表单错误,将邮箱修改为正确格式后,再次点击发表

1.6K20

框架篇-Django博客应用-文章展示

发布文章 发布一篇文章,先有一个能写文字并发布页面; 页面具有两个内容,一个是链接地址,一个是页面内容。 View 视图 编辑 index/views.py 文件: 这次视图基于视图 ?...BlogPublishView 继承是 FormView ; 使用 Form 表单为 BlogPublishForm;模版为 blog_publish.html Form 表单 在 index/...django form 表单 html form 表单,各大网站上登录页面登录框或页面上评论/留言框就是一个 form 表单。...基本上网页上需要人为输入并验证都是 form 表单。 save 函数 save 函数是在视图中进行调用,在表单验证成功后执行。...{% block scripts %} 是进行初始化一个 Editor,它会自动嵌套到页面的第一个 标签

50210

Django视图

一、URLconf 用户通过在浏览器地址栏输入网址请求网站,对于Django开发网站,由哪一个视图进行处理请求,是由url匹配找到。...在浏览器给出地址发出请求采用get方式,超链接。 在浏览器中点击表单提交按钮发起请求,如果表单method设置为post则为post请求。...如果使用这种方式构造一个漂亮丰富页面,对于开发人员真是会发疯,于是就有了下面的方式: 调用模板 可以将html、css、js定义到一个html文件,然后由视图来调用。...重定向简写函数redirect 在django.shortcuts模块为重定向提供了简写函数redirect。 1)修改booktest/views.py文件red1视图,代码如下: ? ?...Cookie基于域名安全,不同域名Cookie是不能互相访问访问itcast.cn时向浏览器写了Cookie信息,使用同一浏览器访问baidu.com时,无法访问到itcast.cn写Cookie

4.4K20

bootstrap+django搭建防跨站点攻击登陆系统

这里需要说明以下,我编写model层,并不是直接继承model.Model,而是继承django自带登录系统AbstractUse,这是django为了方便做登陆系统,而高度抽象出来一个基...继续点击进入即可看见,每个记录详细内容: ? 编写forms.py表单层: ? 注意,表单使用widget来添加表单属性,继承django.forms,即可使用。...比如,如果你需要输入是密码,那么,只需要在widget中加入forms.PassInput(attrs=({"class":""},{"id":""}))。 编写视图层(views.py) ? ?...视图函数这里,有几点需要注意,一是,我使用django通用视图,也就是继承了dajngo.views.genericView,generic还有许多其他,它们都是基于View。...dajngo使用伪随机数来完成这个操作,使用起来很简单,只需要在表单只能加入{{csrf_token}}, ? 这时当我们在登录时候,如下图,便会出现一串伪随机数。可以杜绝99%csrf。

1.2K20

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

(13)url配置 url配置,关于参数。可以使用 : (/?P\d{2}/) 来指定 views视图参数对应关系。...[0]或kwargs['object_id'] 而不需要再记住 URLconf名称了 ##当然在 Django1.6,完全可以不用在URLconf中使用 ?...}} (19)表单 Django提供了forms库把框架里三个主要组件联系在一起:模型定义数据库字段,模板里显示HTML表单标签,还有检验用户输入和显示错误信息能力。...当有关联对象时,Django会给表单添加一个额外方法 save_m2m (21)区别于Model ModelFormMeta嵌套允许你定义两个可选属性,fields和exclude...(null=True) (22)Form实例初始化 form = PersonForm(initial={'name': '请输入姓名'}) (23)Form表单验证 唉

1.7K20

Django视图层与模板层

一、视图视图函数()简称为视图,就是一个普通函数(),它功能是接收web请求,并返回web响应....2:如果表单属性method='POST',那么在提交表单时,表单所有数据都会存放于请求体,在发送给django 后会封装到request.body里,此时django为了方便我们提取数据,会.../form-data" 如果form表单提交数据是按照编码格式1,那么request.body数据格式类似于GET方法数据格式, k1=v1&k2=v2,此时django会将request.body...你需要加一个safe参数 return JsonResponse(l,safe=False) 1.4FBV与CBV Django视图层由两种形式构成:FBV基于函数视图(Function...base view)和CBV基于视图(Class base view) 1.4.1FBV 我们前面使用视图函数就是FBV。

9.2K10

Django 教程 --- Django 基础

当您构建一个网站时,您总是需要一组类似的组件:处理用户身份验证(注册、登录、注销)方法、网站管理面板、表单、上传文件方法等等。Django提供了现成组件供您使用。...,它不需要其他任何东西 它有数以千计额外软件包 它是可扩展 Django架构 Django基于MVT(模型-视图-模板)架构。...它是整个应用程序背后逻辑数据结构,由数据库(通常是关系数据库,MySql、Postgres)表示 视图:视图是用户界面——当你渲染一个网站时,你在浏览器中看到东西。...MVT模型在应用程序创建url、模型、视图等,它们将自动包括在您主项目中。...Django Apps主要特点是独立性,每个app都作为一个独立单元来支持主项目。要了解更多关于Django应用程序,请访问如何在Django创建应用程序?

3.6K11
领券