- 1、本文档共24页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Django 表单处理Django 表单处理
Dj ango 表单处理
从Google的简朴的单个搜索框,到常见的Blog评论提交表单,再到复杂的⾃定义数据
输⼊接⼜,HTML表单⼀ 是交互性⽹站的⽀柱。 本章介绍如何⽤Dj ango对⽤户通过
表单提交的数据进⾏访问、有效性检查以及其它处理。 与此同时,我们将介绍
HttpRequest对象和Form对象。
从Request对象中获取数据
我们在第三章讲述View的函数时已经介绍过HttpRequest对象了,但当时并没有讲太
多。 让我们回忆下:每个view函数的第⼀个参数是⼀个HttpRequest对象,就像下⾯这
个hello()函数
from django.http import HttpResponse
def hello(request):
return HttpResponse(Hello world)
HttpRequest对象,⽐如上⾯代码⾥的request变量,会有⼀些有趣的、你必须让⾃⼰熟
悉的属性和⽅法,以便知道能拿它们来做些什么。 在view函数的执⾏过程中,你可以
⽤这些属性来获取当前request的⼀些信息 (⽐如,你正在加载这个页⾯的⽤户是谁,
或者⽤的是什么浏览器)。
URL相关信息
HttpRequest对象包含当前请求URL 的⼀些信息:
属性/⽅法 说明 举例
除域名以外的请求路
request .path 径,以正斜杠开头 /hello/
主机名 (⽐如,通常所
request .get_host() 说的域名) 127 .0 .0 .1 8000 or www .example .com
请求路径,可能包含查
request .get_full_path() 询字符串 /hello/?print=true
如果通过HTTPS访问,
request .is_secure() 则此⽅法返回True , 否 True 或者 False
则返回False
在view函数⾥,要始终⽤这个属性或⽅法来得到URL ,⽽不要⼿动输⼊。 这会使得代
码更加灵活,以便在其它地⽅重⽤。 下⾯是⼀个简单的例⼦:
# BAD
def current_url_view_bad(request):
return HttpResponse(Welcome to the page at /current/)
# GOOD
def current_url_view_good(request):
return HttpResponse(Welcome to the page at %s % request.pat
有关request 的其它信息
request .META 是⼀个Python字典,包含了所有本次HTTP请求的Header信息,⽐如⽤
户IP地址和⽤户Agent (通常是浏览器的名称和版本号)。 注意,Header信息的完整
列表取决于⽤户所发送的Header信息和服务器端设置的Header信息。 这个字典中⼏个
常见的键值有:
HTTP_REFERER ,进站前链接⽹页,如果有的话。 (请注意,它是
REFERRER 的笔误。)
HTTP_USER_AGENT ,⽤户浏览器的user-agent字符串,如果有的话。 例
如:Mozilla/5.0 (X 11; U; Linux i686; fr-
FR; rv 7) GeckoFirefox/2.0 .0 .17 .
REMOTE_ADDR 客户端IP ,如:12.345.67 .89 。(如果申请是经过代理服务器
的话,那么它可能是以逗号分割的多个IP地址,
如:12.345.67 .89,23.456.78.90 。)
注意,因为 request .META 是⼀个普通的Python字典,因此当你试图访问⼀个不存在的
键时,会触发⼀个KeyError异常。 (H
您可能关注的文档
- CRM6513DSCNV1规格书P0高PF低THD大功率高恒流精度CRM6513DSCNV1规格书P0高PF低THD大功率高恒流精度.pdf
- CR5228 电源IC规格书 7CR5228 电源IC规格书 7.pdf
- cs dust2 技巧教学cs dust2 技巧教学.ppt
- CS2678X型接地电阻测试仪使用说明书CS2678X型接地电阻测试仪使用说明书.pdf
- CRF立式多级不锈钢离心泵_自来水管道增压水泵选型样本CRF立式多级不锈钢离心泵_自来水管道增压水泵选型样本.pdf
- CSC200系列装置调试软件使用说明CSC200系列装置调试软件使用说明.pdf
- CS6552EP LED驱动18W应用资料V1.0 201311CS6552EP LED驱动18W应用资料V1.0 201311.pdf
- CSS背景颜色 背景图片 居中 重复 固定样式background经验篇CSS背景颜色 背景图片 居中 重复 固定样式background经验篇.doc
- CSR-USB蓝牙烧录器使用说明书CSR-USB蓝牙烧录器使用说明书.pdf
- CSR(SIRF) A6车载导航核心板解决方案CSR(SIRF) A6车载导航核心板解决方案.pdf
- 2025年新兴经济与服务业市场拓展策略报告.docx
- 2025年新兴经济与服务业风险防控策略报告.docx
- 妇女保健副高精品试题.docx
- 2023年中铁十五局集团有限公司安全监督部副总经理招聘笔试参考题库附带答案详解.doc
- 2025年新兴经济对服务业市场格局影响分析报告.docx
- 2025年新兴经济服务业商业模式创新与竞争优势研究报告.docx
- 2025年新型建筑材料在居住品质提升中的应用与探索报告.docx
- 2025年新出行共享汽车消费场景消费金融产品创新与风险防范研究.docx
- 传统文化校本课程设计与初中道德与法治教学融合研究论文.docx
- 2025年新型显示材料在医疗设备中的应用与竞争分析报告.docx
文档评论(0)