【python – 调用Django模型保存/删除后调用函数】教程文章相关的互联网学习教程文章

详尽讲述用Python的Django框架测试驱动开发的教程【图】

测试驱动开发(TDD)是一个迭代的开发周期,强调编写实际代码之前编写自动化测试。 这个过程很简单:先编写测试。 查看测试失败的地方 编写足够的代码以使测试通过。 再次测试。 代码重构 。 重复以上操作。为什么要用TDD? 使用TDD,你将学会把你的代码拆分成符合逻辑的,简单易懂的片段,这有助于确保代码的正确性。 这一点非常重要,因为做到下面这些事情是非常困难的:在我们的脑中一次性处理所有复杂的问题。 了...

在Debian下配置Python+Django+Nginx+uWSGI+MySQL的教程

最近尝试把项目迁移到Python环境下,特别新装了一台干净的Debian系统,准备重新配置环境,上网找了一些运行Python Web的环境方案,最后敲定Nginx+uWSGI组合,Nginx用得比较多,熟练些;uWSGI据说性能不错,想尝试一下。 网上大部分教程都是要求到uWSGI官方网站下载源码包,然后通过编译的方式安装,比如对于一台新Debian系统,可以通过下面的命令安装:apt-get update apt-get upgrade apt-get install build-essential psmisc apt...

Django中几种重定向方法

这里使用的是django1.5 需求: 有一个界面A,其中有一个form B, 前台提交B之后,后台保存数据之后,返回界面A,如果保存失败需要在A界面提示错误。 这里就需要后台的重定向,而且需要可以带着参数,也就是error message 这里收集了几种方法,简答说下需要那些包,怎么简单使用。 一、 使用HttpResponseRedirect The first argument to the constructor is required – the path to redirect to. This can be a fully qualified URL...

在Python的Django框架中用流响应生成CSV文件的教程

在Django里,流式响应StreamingHttpResponse是个好东西,可以快速、节省内存地产生一个大型文件。 目前项目里用于流式响应的一个是Eventsource,用于改善跨系统通讯时用户产生的慢速的感觉。这个不细说了。 还有一个就是生成一个大的csv文件。 当Django进程处于gunicorn或者uwsgi等web容器中时,如果响应超过一定时间没有返回,就会被web容器终止掉,虽然我们可以通过加长web容器的超时时间来绕过这个问题,但是毕竟还是治标不治本。...

详解Python的Django框架中的通用视图【图】

通用视图 1. 前言 回想一下,在Django中view层起到的作用是相当于controller的角色,在view中实施的 动作,一般是取得请求参数,再从model中得到数据,再通过数据创建模板,返回相应 响应对象。但在一些比较通用的功能中,比如显示对象列表,显示某对象信息,如果反复 写这么多流程的代码,也是一件浪费时间的事,在这里,Django同样给我们提供了类似的 "shortcut"捷径--通用视图。 2. 使用通用视图 使用通用视图的方法就是在urls....

详解Python的Django框架中的templates设置

TEMPLATES Django 1.8的新特性 一个列表,包含所有在Django中使用的模板引擎的设置。列表中的每一项都是一个字典,包含某个引擎的选项。 以下是一个简单的设定,告诉Django模板引擎从已安装的应用程序(installed applications)的templates子目录中读取模板:TEMPLATES = [{BACKEND: django.template.backends.django.DjangoTemplates,APP_DIRS: True,}, ]以下选项对所有引擎(backends)都可用。 BACKEND 默认:无定义 使用的模板...

Python使用django获取用户IP地址的方法

本文实例讲述了Python使用django获取用户IP地址的方法。分享给大家供大家参考。具体如下: 函数实现:def get_client_ip(request): try:real_ip = request.META[HTTP_X_FORWARDED_FOR]regip = real_ip.split(",")[0] except:try:regip = request.META[REMOTE_ADDR]except:regip = "" return regip问题是会在有的地方不好使,检测发现request.META根本无key值等于HTTP_X_FORWARDED_FOR和REMOTE_ADDR。服务器采用nginx+fastcgi实现。...

Django中实现点击图片链接强制直接下载的方法

本文实例讲述了Django中实现点击图片链接强制直接下载的方法。分享给大家供大家参考。具体分析如下: 当用户点击图片连接时,默认为在浏览器中直接开打图片,这段代码可以让图片链接变成下载 这段代码也非常适合下载大文件,基本不会消耗内存,每次只读取一部分数据到内存,然后提供下载def Download(request):def readFile(fn, buf_size=262144):f = open(fn, "rb")while True:c = f.read(buf_size)if c:yield celse:breakf.close...

Django发送html邮件的方法

本文实例讲述了Django发送html邮件的方法。分享给大家供大家参考。具体如下: 在Django中,发送邮件非常的方便,一直没有时间,今天来做一个小小的总结吧。 我们常用的当然是通过send_mail发送邮件:代码如下:send_mail(subject,message,from_email,recipient_list,fail_silently=False,auth_user=None,auth_password=None,connection=None) subject,message,from_email 和recipient_list 这四个参数是必须的。 subject: 字符串,表...

django实现分页的方法

本文实例讲述了django实现分页的方法。分享给大家供大家参考。具体如下: Python代码如下:#!/usr/bin/env python # -*- coding: utf-8 -*- # Create your views here. from django.shortcuts import render_to_response from winlog.log_dj.models import Winlog from django.core.paginator import Paginator,InvalidPage,EmptyPage,PageNotAnInteger def index(request):after_range_num = 5before_range_num = 4try:page=int(r...

在Python的Django框架中simple-todo工具的简单使用

缘起 simple-todo最早是web.py一个中文教程的例子。后来Uliweb的作者limodou 认为这个教程很不错,于是有了Uliweb版的simple-todo。接着又有了Bottle版和Flask版。这俨然成了一个FrameworksShow项目。既然是FrameworksShow, 那Django的总不应当缺了吧。 simple-todo: 一个简易的 todo 程序 http://simple-is-better.com/news/309 Simple Todo (Uliweb 版本) 教程 by @limodou http://simple-is-better.com/news/312 Simple-TODO B...

Python中Django框架下的staticfiles使用简介

django1.3新加入了一个静态资源管理的app,django.contrib.staticfiles。在以往的django版本中,静态资源的管理一向都是个问题。部分app发布的时候会带上静态资源文件,在部署的时候你必须手动从各个app中将这些静态资源文件复制到同一个static目录。在引入staticfiles后,你只需要执行./manage.py collectstatic就可以很方便的将所用到app中的静态资源复制到同一目录。 staticfiles的引入,方便了django静态文件的管理,不过感觉s...

Python的Django框架中settings文件的部署建议

django在一个项目的目录结构划分方面缺乏必要的规范,因此不同人的项目组织形式也千奇百怪,而且也很难说谁的做法就比较好。我根据自己的项目组织习惯,发布了一个项目dj-scaffold。 前些天在reddit上为我的项目dj-scaffold打了个“广告”(见:http://redd.it/kw5d4)。不想评价甚糟,甚至差点被打成负分。其中更也人将这个项目说的一文不值。面对负面声音虽然会有些不爽,但其中的建设性意见还是需要听取的,至于那些纯属个人偏好...

django通过ajax发起请求返回JSON格式数据的方法

本文实例讲述了django通过ajax发起请求返回JSON格式数据的方法。分享给大家供大家参考。具体实现方法如下: 这是后台处理的:def checkemail(request):user = Noneif request.POST.has_key(email):useremail = request.POST[email]result = {}user = User.objects.filter(useremail__iexact = useremail)if user:result = "1"result = simplejson.dumps(result)else:result = "0"result = simplejson.dumps(result)return HttpResp...

Django中模型Model添加JSON类型字段的方法

本文实例讲述了Django中模型Model添加JSON类型字段的方法。分享给大家供大家参考。具体如下: Django里面让Model用于JSON字段,添加一个JSONField自动类型如下:class JSONField(models.TextField): __metaclass__ = models.SubfieldBase description = "Json" def to_python(self, value): v = models.TextField.to_python(self, value) try: return json.loads(v)[v] except: pass return v def get_prep_value(self, value): re...