- 浏览: 2653475 次
- 来自: 杭州
文章分类
- 全部博客 (1188)
- webwork (4)
- 网摘 (18)
- java (103)
- hibernate (1)
- Linux (85)
- 职业发展 (1)
- activeMQ (2)
- netty (14)
- svn (1)
- webx3 (12)
- mysql (81)
- css (1)
- HTML (6)
- apache (3)
- 测试 (2)
- javascript (1)
- 储存 (1)
- jvm (5)
- code (13)
- 多线程 (12)
- Spring (18)
- webxs (2)
- python (119)
- duitang (0)
- mongo (3)
- nosql (4)
- tomcat (4)
- memcached (20)
- 算法 (28)
- django (28)
- shell (1)
- 工作总结 (5)
- solr (42)
- beansdb (6)
- nginx (3)
- 性能 (30)
- 数据推荐 (1)
- maven (8)
- tonado (1)
- uwsgi (5)
- hessian (4)
- ibatis (3)
- Security (2)
- HTPP (1)
- gevent (6)
- 读书笔记 (1)
- Maxent (2)
- mogo (0)
- thread (3)
- 架构 (5)
- NIO (5)
- 正则 (1)
- lucene (5)
- feed (4)
- redis (17)
- TCP (6)
- test (0)
- python,code (1)
- PIL (3)
- guava (2)
- jython (4)
- httpclient (2)
- cache (3)
- signal (1)
- dubbo (7)
- HTTP (4)
- json (3)
- java socket (1)
- io (2)
- socket (22)
- hash (2)
- Cassandra (1)
- 分布式文件系统 (5)
- Dynamo (2)
- gc (8)
- scp (1)
- rsync (1)
- mecached (0)
- mongoDB (29)
- Thrift (1)
- scribe (2)
- 服务化 (3)
- 问题 (83)
- mat (1)
- classloader (2)
- javaBean (1)
- 文档集合 (27)
- 消息队列 (3)
- nginx,文档集合 (1)
- dboss (12)
- libevent (1)
- 读书 (0)
- 数学 (3)
- 流程 (0)
- HBase (34)
- 自动化测试 (1)
- ubuntu (2)
- 并发 (1)
- sping (1)
- 图形 (1)
- freemarker (1)
- jdbc (3)
- dbcp (0)
- sharding (1)
- 性能测试 (1)
- 设计模式 (2)
- unicode (1)
- OceanBase (3)
- jmagick (1)
- gunicorn (1)
- url (1)
- form (1)
- 安全 (2)
- nlp (8)
- libmemcached (1)
- 规则引擎 (1)
- awk (2)
- 服务器 (1)
- snmpd (1)
- btrace (1)
- 代码 (1)
- cygwin (1)
- mahout (3)
- 电子书 (1)
- 机器学习 (5)
- 数据挖掘 (1)
- nltk (6)
- pool (1)
- log4j (2)
- 总结 (11)
- c++ (1)
- java源代码 (1)
- ocr (1)
- 基础算法 (3)
- SA (1)
- 笔记 (1)
- ml (4)
- zokeeper (0)
- jms (1)
- zookeeper (5)
- zkclient (1)
- hadoop (13)
- mq (2)
- git (9)
- 问题,io (1)
- storm (11)
- zk (1)
- 性能优化 (2)
- example (1)
- tmux (1)
- 环境 (2)
- kyro (1)
- 日志系统 (3)
- hdfs (2)
- python_socket (2)
- date (2)
- elasticsearch (1)
- jetty (1)
- 树 (1)
- 汽车 (1)
- mdrill (1)
- 车 (1)
- 日志 (1)
- web (1)
- 编译原理 (1)
- 信息检索 (1)
- 性能,linux (1)
- spam (1)
- 序列化 (1)
- fabric (2)
- guice (1)
- disruptor (1)
- executor (1)
- logback (2)
- 开源 (1)
- 设计 (1)
- 监控 (3)
- english (1)
- 问题记录 (1)
- Bitmap (1)
- 云计算 (1)
- 问题排查 (1)
- highchat (1)
- mac (3)
- docker (1)
- jdk (1)
- 表达式 (1)
- 网络 (1)
- 时间管理 (1)
- 时间序列 (1)
- OLAP (1)
- Big Table (0)
- sql (1)
- kafka (1)
- md5 (1)
- springboot (1)
- spring security (1)
- Spring Boot (3)
- mybatis (1)
- java8 (1)
- 分布式事务 (1)
- 限流 (1)
- Shadowsocks (0)
- 2018 (1)
- 服务治理 (1)
- 设计原则 (1)
- log (0)
- perftools (1)
最新评论
-
siphlina:
课程——基于Python数据分析与机器学习案例实战教程分享网盘 ...
Python机器学习库 -
san_yun:
leibnitz 写道hi,我想知道,无论在92还是94版本, ...
hbase的行锁与多版本并发控制(MVCC) -
leibnitz:
hi,我想知道,无论在92还是94版本,更新时(如Puts)都 ...
hbase的行锁与多版本并发控制(MVCC) -
107x:
不错,谢谢!
Latent Semantic Analysis(LSA/ LSI)算法简介 -
107x:
不错,谢谢!
Python机器学习库
HttpRequest对象
包含当前请求URL的一些信息:
request.path | 除域名以外的请求路径,以正斜杠开头 | "/hello/" |
request.get_host() | 主机名(比如,通常所说的域名) | "127.0.0.1:8000" or "www.example.com" |
request.get_full_path() | 请求路径,可能包含查询字符串 | "/hello/?print=true" |
request.is_secure() | 如果通过HTTPS访问,则此方法返回True, 否则返回False | True 或者 False |
request.META 是一个Python字典,包含了所有本次HTTP请求的Header信息,比如用户IP地址和用户Agent(通常是浏览器的名称和版本号)。
注意,因为 request.META 是一个普通的Python字典,因此当你试图访问一个不存在的键时,会触发一个KeyError异常。
# BAD! def ua_display_bad(request): ua = request.META['HTTP_USER_AGENT'] # Might raise KeyError! return HttpResponse("Your browser is %s" % ua)
# GOOD (VERSION 2) def ua_display_good2(request): ua = request.META.get('HTTP_USER_AGENT', 'unknown') return HttpResponse("Your browser is %s" % ua)
form对象
from django import forms class ContactForm(forms.Form): subject = forms.CharField() email = forms.EmailField(required=False) message = forms.CharField()
把form打印出来
from mblog.forms import BlogForm
print BlogForm(None,None)
<tr><th><label for="id_content">描述:</label></th><td><input type="text" name="content" id="id_content" /></td></tr>
<tr><th><label for="id_tags">标签:</label></th><td><input type="text" name="tags" id="id_tags" /></td></tr>
<tr><th><label for="id_source_link">链接:</label></th><td><input type="text" name="source_link" id="id_source_link" /></td></tr>
<tr><th><label for="id_source_title">标题:</label></th><td><input type="text" name="source_title" id="id_source_title" /></td></tr>
<tr><th><label for="id_source">来源:</label></th><td><input type="text" name="source" id="id_source" /></td></tr>
<tr><th><label for="id_group">描述:</label></th><td><input type="text" name="group" id="id_group" /></td></tr>
<tr><th><label for="id_flag">标志:</label></th><td><input type="text" name="flag" id="id_flag" /></td></tr>
<tr><th><label for="id_image_src">抓取图片url:</label></th><td><input type="text" name="image_src" id="id_image_src" /></td></tr>
<tr><th><label for="id_photo_id">上传图片id:</label></th><td><input type="text" name="photo_id" id="id_photo_id" /></td></tr>
<tr><th><label for="id_album">图片:</label></th><td><input type="text" name="album" id="id_album" /></td></tr>
<tr><th><label for="id_syncpost">同步围脖标志:</label></th><td><input type="checkbox" name="syncpost" id="id_syncpost" /></td></tr>
<tr><th><label for="id_taobao_item">shopping:</label></th><td><input type="text" name="taobao_item" id="id_taobao_item" /></td></tr>
<tr><th><label for="id_tags">标签:</label></th><td><input type="text" name="tags" id="id_tags" /></td></tr>
<tr><th><label for="id_source_link">链接:</label></th><td><input type="text" name="source_link" id="id_source_link" /></td></tr>
<tr><th><label for="id_source_title">标题:</label></th><td><input type="text" name="source_title" id="id_source_title" /></td></tr>
<tr><th><label for="id_source">来源:</label></th><td><input type="text" name="source" id="id_source" /></td></tr>
<tr><th><label for="id_group">描述:</label></th><td><input type="text" name="group" id="id_group" /></td></tr>
<tr><th><label for="id_flag">标志:</label></th><td><input type="text" name="flag" id="id_flag" /></td></tr>
<tr><th><label for="id_image_src">抓取图片url:</label></th><td><input type="text" name="image_src" id="id_image_src" /></td></tr>
<tr><th><label for="id_photo_id">上传图片id:</label></th><td><input type="text" name="photo_id" id="id_photo_id" /></td></tr>
<tr><th><label for="id_album">图片:</label></th><td><input type="text" name="album" id="id_album" /></td></tr>
<tr><th><label for="id_syncpost">同步围脖标志:</label></th><td><input type="checkbox" name="syncpost" id="id_syncpost" /></td></tr>
<tr><th><label for="id_taobao_item">shopping:</label></th><td><input type="text" name="taobao_item" id="id_taobao_item" /></td></tr>
clean_方法
Django的form系统自动寻找匹配的函数方法,该方法名称以clean_ 开头,并以字段名称结束。 如果有这样的方法,它将在校验时被调用。例如:
class EditBlogForm(forms.Form): content = forms.CharField(label = u"描述", max_length = settings.MAX_MBLOG_LENGTH, required=False) blog = forms.IntegerField(label = u"分享") album = forms.IntegerField(label = u"图片", required=False) flag = forms.IntegerField(label = u"标志", required=False) group = forms.IntegerField(label = u"小组", required=False)
将对应:
def clean_blog(self): blog_id = self.cleaned_data['blog'] blog = None try: blog = Message.objects.get(id=blog_id) except Message.DoesNotExist: raise forms.ValidationError(u"编辑的分享不存在") return blog
clean_blog() 方法将在blog 字段的默认校验逻辑执行之后被调用。因为字段数据已经被部分处理了,所以我们不必担心数据是否为空,直接从self.cleaned_data 中提取出来。
更多:http://djangobook.py3k.cn/2.0/chapter07/
发表评论
-
django 处理unicode编码
2013-04-28 22:18 2821django.util.encoding.py impor ... -
django lazy user实现
2013-04-26 15:48 1214代码如下: from people.service ... -
django db models探索
2013-03-24 16:04 1793一、django db models结构 django ... -
django + sqlalchemy pool 测试
2013-03-15 22:59 13771.修改gevent /duitang/dist/sys ... -
django template探索
2013-01-04 18:18 1243由于需要解决django template问题,研究了djan ... -
django db backends探索
2012-12-29 18:20 2470由于需要解决django db长连接的问题,最近看了看djan ... -
MySQL Connection Pooling with Django and SQLAlchemy
2012-12-28 21:54 0Here's a quick and dirty recipe ... -
Launching a High Performance Django Site
2012-12-28 21:39 1068Are the brakes on your Django a ... -
django 性能优化
2012-12-28 17:24 2119django默认的一些系统性能低下,无法支撑大流量请求,一些优 ... -
让Django支持数据库长连接
2012-12-28 17:05 1803原文:http://www.cnblogs.com ... -
django 的BaseMemcachedCache线程安全问题
2012-10-21 15:11 1120注意,django.core.cache.backends.m ... -
django request 获取请求的URL
2012-10-17 17:17 22080request.get_host() 获取请求地址 ... -
django user model
2012-09-12 22:01 936http://stackoverflow.com/questi ... -
python uwsgi
2012-07-30 17:21 0之前的文章已经提到了 django+fastcgi的运行并 ... -
在生产系统使用Tornado WebServer来代替FastCGI加速你的Django应用
2012-07-30 17:19 5原文:http://www.cnblogs.com/Alexa ... -
python web.py
2012-07-30 17:04 937使用web.py能快速启动一个web服务。 # -*- c ... -
浅析 Django runserver 的 autoreload 功能
2012-07-30 16:53 5143浅析 Django runserver 的 auto ... -
django auth_user.get_profile
2012-07-24 12:29 2619django 对 auth_user 提供了扩展get_pro ... -
django + postfix 搭建邮件服务
2012-07-23 14:48 1390email 配置: SERVER_EMAIL = &q ... -
django 中文问题
2012-07-17 16:45 1594好像每个国外的开源框架都会遇到中文问题,今天又被django ...
相关推荐
在Django框架中,Form是处理用户输入数据的重要工具,它简化了模型与视图之间的交互,使得数据验证和处理更加高效。本教程基于Django 1.6和Python 2.7.6,将详细介绍如何利用Form实现注册、登录、注销以及修改密码...
在Python的Web开发框架Django中,Form表单验证是一个至关重要的部分,它允许开发者创建用户界面并确保从用户那里接收到的数据是...阅读"3.4 Django Form.pdf"这样的资料,将进一步深入理解Django表单验证的细节和实践。
在Python的Web开发框架Django中,Form表单是处理用户输入数据的重要工具。它不仅提供了数据验证功能,还能帮助我们构建美观的HTML表单。本教程将详细讲解Django的Form表单验证以及如何结合Ajax实现无刷新验证。 ...
在Django框架中,表单(Form)是处理用户数据的核心工具,特别是在处理文件上传时。本教程将深入探讨如何使用Django Forms来实现文件上传功能。 首先,我们需要了解Django Form的基本结构。在Django中,创建一个...
### Django前端模板及crispy form美化等 #### 一、引言 本文档作为对上一篇关于Django用户登录注册等内容的延续,主要聚焦于如何利用第三方库Crispy Forms来实现前端页面的美化与优化。对于初学者而言,掌握Django...
如上所示,`enctype="multipart/form-data"`使得浏览器能够将文件作为多部分数据发送,这样Django的`request.FILES`才能接收到上传的文件对象。如果忽略这个属性,文件数据将不会被正确处理,导致`request.FILES`为...
form = SignupForm(request.POST) if form.is_valid(): # form.cleaned_data 将包含用户提交的数据,包括选中的classInfo ID class_id = form.cleaned_data['classInfo'] # 这里可以进行进一步的数据处理和保存...
这个定制的`CustomWizardView`实例不仅提供了上一步功能,还保持了Django FormWizard的原有优点,如数据持久化和表单验证。这使得开发多步骤表单变得更加灵活和用户友好。通过这种方式,你可以根据项目需求,自定义...
在Django框架中,ModelForm是用于方便地创建基于模型(Model)的表单(Form)的一个工具。它简化了数据验证和模型实例的创建。本示例将讲解如何使用ModelForm来实现多文件上传的功能,这对于处理用户上传的多个文件...
### Django中request.POST的获取机制 Django框架内置了一个HttpRequest对象,它负责封装了HTTP请求的数据。开发者通常通过request.POST属性来获取表单数据。request.POST是一个QueryDict对象,它是一个专门用来处理...
HTML的form表单和Django的form表单是Web开发中的两种重要概念,它们在构建交互式用户界面中起着核心作用。HTML的form表单主要用于收集用户输入的数据,而Django的form表单则是一种更高级的抽象,用于处理这些数据的...
### Django Form 应用详解 #### 一、概述 Django 是一款用 Python 编写的高级 Web 开发框架,它遵循 MVC(Model-View-Controller)设计模式,旨在通过“ batteries included”(开箱即用)的方式简化 Web 开发过程...
Form表单提交数据时使用的是post方式,所以在后端接收参数的时候需要先判断请求方式为post时才能请求到数据 name = request.POST.get(‘name’) password = request.POST.get(‘password’) Django中获取...
Django提供了一种声明式的方式来定义和处理表单,通过继承`forms.Form`或`forms.ModelForm`类,我们可以自定义字段、验证规则以及错误消息。例如: ```python from django import forms class UserForm(forms.Form...
form = ImageForm(request.POST, request.FILES) if form.is_valid(): image = form.save(commit=False) image.save() return redirect('success_url') else: form = ImageForm() return render(request, '...
在Django中,Form是处理用户输入数据的重要工具,它允许开发者自定义表单的结构、验证规则以及渲染方式。本篇文章将详细讲解如何在Django Form中自定义`ChoiceField`,使其下拉菜单的选项从数据库中动态获取。 首先...
在Django框架中,表单和模型是两个非常重要的概念,它们构成了数据处理的核心部分。本文将深入探讨Django中的表单(Forms)和模型(Models),以及它们如何协同工作来构建高效、安全的Web应用。 ### Django模型...
在Python Web开发中,Django框架是一个非常强大的...通过这种方式,Django Form使得Web开发更加简洁和高效,同时确保了数据的安全性和一致性。了解并熟练使用Django Form,能大大提高你在Python Web开发中的生产力。