随笔分类 - 深入Django

http://www.cnblogs.com/BeginMan/category/468152.html
django 注册、登录及第三方接口程序(4):扩展邮箱注册,登录,微博登录
摘要: ##1.邮箱注册这里需要扩展User,两种解决办法,1,注册时将email字段内容赋给username,这种瞒天过海型的,另一种就是扩展user,这里介绍django1.5的扩展方法。**1.setting配置** AUTH_USER_MODEL = 'manager.MyUser' ... 阅读全文
posted @  2014-06-22 01:24 BeginMan 阅读(832) |  评论 (0)  编辑
django shortcuts 是一个高效的快捷键
摘要: djangoshortcuts确实很高效,如下:1、get_object_or_404:参考:http://www.cnblogs.com/wanpython/archive/2011/01/03/1924846.html2、未完。。。 阅读全文
posted @  2014-01-03 18:18 BeginMan 阅读(156) |  评论 (0)  编辑
django CSRF
摘要: CSRF引用学习参考学习:浅谈CSRF攻击方式[科普]跨站请求伪造-CSRF防护方法这是篇关于CSRF的英文权威文档防御的总结如下:1、服务器端进行CSRF防御 就是在客户端页面增加伪随机数 或者是表单验证码(就是在客户端页面增加伪随机数,就是对用户而言不方便) 更多的参考以上链接 2、客户端防御的方式就靠用户对安全性的重视程度了。上面的参考文章示例是基于其他web框架,对于django而言,它为我们解决了这个后顾之忧Cross Site Request Forgery protection for Django在Django文档中说的很详尽(点击阅读)在django中可以通过Csrf... 阅读全文
posted @  2013-12-05 20:31 BeginMan 阅读(298) |  评论 (1)  编辑
浅析django form(3):表单核心字段参数和字段
摘要: 文档参考:概述我要弄清楚的是什么:1、django form字段的基础知识 2、form字段的工作机制 3、应用与实际项目中 4、Form类与models的区别class Field(**kwargs):当创建一个Form类,最重要的部分要创建form的字段,也就是字段类(class Field(**kwargs))的实例。每个字段都有一系列的验证逻辑和少量的钩子??Field.clean(value)我们可以直接通过from django import forms对应的字段类实例化一个字段来用,当然这只是在开发测试或学习上用的,很多时候要写在Form 类中组成一个兵团。每个字段实例都有... 阅读全文
posted @  2013-11-28 14:25 BeginMan 阅读(944) |  评论 (0)  编辑
django 简单的邮件系统
摘要: django邮件系统Django发送邮件官方中文文档总结如下:1、首先这份文档看三两遍是不行的,很多东西再看一遍就通顺了。2、send_mail()、send_mass_mail()都是对EmailMessage类使用方式的一个轻度封装,所以要关注底层的EmailMessage。3、异常处理防止邮件头注入。4、一定要弄懂Email backends 邮件发送后端5、多线程的邮件发送。个人简单配置如下:首先是settings.py文件#settings.py#邮件配置EMAIL_HOST = 'smtp.gmail.com' #SMTP地址EMAIL_PORT... 阅读全文
posted @  2013-11-26 13:48 BeginMan 阅读(1726) |  评论 (3)  编辑
django 注册、登录及第三方接口程序(4):关于表单设计和前端实现
摘要: 我想说的是:由于从未单独做过一个完整的注册程序,所以看起来很小的功能其实里面蕴含庞杂的知识点。万事开头难,比如说:数据模型的确定、表单的设计、注册流程、安全问题等。现在就开始一点点的解剖,细分模块,逐一击破。良好的表单理念与设计参考阅读:网站注册流程的分析与研究1.表单信息与数量:注册表单一旦过多,用户就厌恶,但网站却需要这些数据,权衡之际就是最小化减少表单数量,提取主要的元素。现在有些网站使用快速注册的方式鼓励用户注册,快速注册的必填项包括:帐号(E-mail),密码,重复密码(如果用E-mail作为账号,可以省略),条款,要填写的信息非常少,与登录网站时填写的信息一样多。一个网站如果能够真 阅读全文
posted @  2013-11-21 15:44 BeginMan 阅读(1004) |  评论 (0)  编辑
django 注册、登录及第三方接口程序(3):验证之正则表达式
摘要: 一、Summarize了解了Django Auth、知道了如何扩展User,下一步就是完成注册。这里涉及的有以下知识:1.正则表达式 2.前后台验证 3.验证码(Python) 4.邮件激活 5.xss攻击以上我列举的或许不完全,希望有人能提醒补充。本期将分以上5个知识点进行系统学习!二、正则表达式参考学习:正则表达式30分钟入门教程精通 JS正则表达式常用正则表达式正则表达式练手Javascript正则表达式:文档浏览推荐:javascript正则表达式1.创建正则表达式的两种方式 2.范围:g:(global)全文查找 i:(IgnoreCase)忽略大小写 m:(M... 阅读全文
posted @  2013-11-07 17:12 BeginMan 阅读(542) |  评论 (0)  编辑
django 注册、登录及第三方接口程序(2):扩展User表
摘要: 一、django的用户模型和其存在的缺陷这一点大牛们已经很清楚的告诉了我们(点击)。扩展User表是为了满足更多的需求,毕竟自带的字段很少。我用的版本是1.2.3,下面的例子是基于这个版面进行的。二、自定义Profile Model这是django官网提供的方法.意思就是定义一个Profile Model,里面包含一个unique=True的ForeignKey ,在settings.py 添加一个选项 AUTH_PROFILE_MODULE 指向该Profile Model,那么自带User Model的实例就可以通过get_profile()来获取相应的profile的信息了。这里我定义如 阅读全文
posted @  2013-10-26 11:36 BeginMan 阅读(2082) |  评论 (1)  编辑
django 注册、登录及第三方接口程序(1):基础知识
摘要: 一、概述django有一套成型的注册登录模块,auth 系统包含如下:Users Permission Group Message在settings.py配置中,少不了以下配置MIDDLEWARE_CLASSES = ('django.middleware.common.CommonMiddleware','django.contrib.sessions.middleware.SessionMiddleware','django.contrib.auth.middleware.AuthenticationMiddleware','djan 阅读全文
posted @  2013-10-25 15:36 BeginMan 阅读(2399) |  评论 (1)  编辑
django south 使用教程(2)
摘要: 一、迁移清单列出某个app下的迁移清单,或整个django项目的迁移清单,相当于列出其历史记录,这时要用到#某个app下迁移清单manage.py migrate app_name --list#整个项目迁移清单manage.py migrate --list显示如下。注意带*的为已经应用到了 ,()表示尚未应用到的。E:\project\demo>manage.py migrate other --list other (*) 0001_initial (*) 0002_auto__add_action__del_field_contact_age__add_field_contact 阅读全文
posted @  2013-09-17 11:23 BeginMan 阅读(502) |  评论 (0)  编辑
django south 使用教程(1)
摘要: 一、下载与安装south安装包下载地址:https://bitbucket.org/andrewgodwin/south/south文档:http://south.readthedocs.org/en/latest/二、south简介Django 的第三方 app South 就是专门做数据库表结构自动迁移工作,Jacob Kaplan-Moss 曾做过一次调查,South 名列最受欢迎的第三方 app。事实上,它现在已经俨然成为 Django 事实上的数据库表迁移标准,很多第三方 app 都会带 South migrations 脚本。三、回顾syncdbsyncdb是db synchron 阅读全文
posted @  2013-09-16 18:23 BeginMan 阅读(2509) |  评论 (0)  编辑
浅析django form(2)
摘要: 一、在views中的使用下面从我自己做的小demo开始记录起。1 #models.py2 class Other2(models.Model):3 name = models.CharField(max_length=30)4 age = models.IntegerField()5 email = models.EmailField()6 7 class META:8 db_table='Demo'View Code 1 #coding=utf-8 2 #forms.py 3 from django import forms 4 5... 阅读全文
posted @  2013-09-10 16:48 BeginMan 阅读(1979) |  评论 (0)  编辑
浅析django form(1)
摘要: 一、django forms1、特点django forms是Django的表单处理库。依赖HttpRequest,它具有如下特点:(1)、快速自动生成HTML表单(2)、表单数据校验(3)、错误信息提示(4)、自动转换为python数据格式2、探究form类1 #coding=utf-82 #forms.py3 from django import forms4 5 class ContactForm(forms.Form):6 name = forms.CharField(max_length=30)7 age = forms.IntegerField()8 ema... 阅读全文
posted @  2013-09-06 19:27 BeginMan 阅读(2710) |  评论 (1)  编辑
django Admin
摘要: 一、Django站点管理详见《Django book》这里重点列出以下知识点:(1)、admin工作原理:1、预加载:项目执行settings--> urls.py ( admin.autodiscover() ) -- >settings.py ( INSTALL APPS(each app) ) --> (app下包含) admin.py -- >admin.py 执行其代码django.contrib.auth中包含自身admin.py,对应User、Group。2、处理admin.py如果在项目app下存在admin.py 则会加载其中代码。需要导入from d 阅读全文
posted @  2013-09-03 18:13 BeginMan 阅读(1156) |  评论 (0)  编辑
深入Django:图片上传
摘要: 一、资源推荐由于Django 后台的强大功能,可以定义好Models之后通过Django后台进行图片上传处理,但是往往实际项目中都需要自己写后台。对于Python文件上传,是一个不可缺少的部分。那么今天就抽空学学如何良性的实现Python文件上传。1、前端资源推荐:Jquery相册鼠标经过放大图片插件10个强大的AJAX jQuery文件上传控件。易用的jQuery上传插件Uploadify2、相关文章推荐:Python图片处理模块二、关于Django文件上传1、django后台形式这里需要弄明白几个Django 字段类FileField:classFileField(upload_to=No 阅读全文
posted @  2013-08-20 23:08 BeginMan 阅读(543) |  评论 (2)  编辑
深入理解Urls
摘要: 目录索引:一、Django URL的本质二、解析patterns()函数三、解析url()函数四、include()函数五、url高级配置一、本质(1):它的本质是 URL 模式以及要为该 URL 模式调用的视图函数之间的映射表。django-admin.py startproject 运行时,该脚本会自动为你建了一份 URLconf(URL configuration)(即 urls.py 文件)。由于它是纯Python代码(pure Python code),可以动态创建(Dynamically Constructed).(2):Django 把这个记录到ROOT_URLCONF 中ROO 阅读全文
posted @  2013-08-17 11:48 BeginMan 阅读(417) |  评论 (0)  编辑
web开发的那些障眼法
摘要: 一、一种需求在做Django项目的时候,并没有太多交互的需求。就比如个人输入的临时消息,用户登录之后可能会在这个功能上发了很多临时消息,但是却不是那么重要,有些网站记录到数据库,但是在后台只返回最近的临时消息。在前台也只是显示几条而已,是一种即发即得的效果。用户需要的是 【快速】如:可能会有下面两种操作:1、写入后台,并前台渲染,返回发布的内容(点击刷新才行)2、异步加载的方式但是对于上面的需求,难免有以下问题:1、多次请求服务器,如果用户闲着没事,疯狂点击发布按钮的时候,影响性能2、如果网速慢的情况下,要等数据加载完成之后才能进行后续操作,这个对于上述的需求并不有礼。既然是 即发即得 且不重 阅读全文
posted @  2013-06-15 01:35 BeginMan 阅读(386) |  评论 (2)  编辑
django 执行原始SQL
摘要: 一、参考文档和资料Django 1.2https://docs.djangoproject.com/en/1.2/topics/db/sql/二、知识点总结Django提供两种方式执行(performing)原始的SQL查询:(1)、Manager.raw():执行原始查询并返回模型实例(2)、Executing custom SQL directly:直接执行自定义SQL,这种方式可以完全避免数据模型,而是直接执行原始的SQL语句。三、raw()方法1、Manager.raw(raw_query, params=None, translations=None)这种方法通过执行原始的SQL查询 阅读全文
posted @  2013-05-27 12:21 BeginMan 阅读(4532) |  评论 (0)  编辑
Django出错解决方案汇总
摘要: 一、模板类型错误:错误原因:在models中漏掉了return: 1 class UserProfile(models.Model): 2 """ 3 功能说明: 扩展用户 4 --------------------------------------------------------------------------- 5 修改人 修改时间 修改原因 6 ----------------------------------------------------------------... 阅读全文
posted @  2013-05-06 11:54 BeginMan 阅读(379) |  评论 (2)  编辑
Q查询
摘要: 一、Complex lookups with Q objects(Q对象的复杂查询)仅仅靠单一的关键字参数查询已经很难满足查询要求。此时Django为我们提供了Q查询:class Q1、Q对象(django.db.models.Q)可以对关键字参数进行封装,从而更好地应用多个查询,下面是最简单的例子:from django.db.models import Qfrom login.models import New #假设在我的login app的models.py下有New数据类q1=New.objects.filter(Q(question__startswith='What 阅读全文
posted @  2013-04-17 14:38 BeginMan 阅读(634) |  评论 (4)  编辑
URL常用配置方法
摘要: 原文来自:http://blog.sina.com.cn/s/blog_881a241b0100tw0t.html1:直接导入视图函数1 from django.conf.urls.defaults import *2 from mysite.views import hello3 urlpatterns = patterns('',4 (r'^hello/$', hello),5 (r'^time/$', time),6 )2:导入包函模块名和函数的客串,而不是函数本身1 from django.conf.urls.defaults impor 阅读全文
posted @  2013-03-21 17:05 BeginMan 阅读(930) |  评论 (0)  编辑

你可能感兴趣的:(django)