随笔分类 - Django
摘要:一些Django的‘奇技淫巧’就存在于这些不起眼的地方。 为了提高模板系统对人类的友好性,Django在django.contrib.humanize中提供了一系列的模板过滤器,有助于为数据展示添加“人文关怀”。 需要把django.contrib.humanize添加到INSTALLED_APPS
阅读全文
摘要:国际化标签和过滤器 Django还提供了一些模板标签和过滤器,用以控制模板中国际化的每个方面。它们允许对翻译,格式化和时区转换进行粒度控制。 1. i18n 此标签允许在模板中指定可翻译文本。要启用它,请将USE_I18N设置为True,然后加载{% load i18n %}。 2. l10n 此标
阅读全文
摘要:Django内置过滤器总览 可以查询下表来总览Django的内置过滤器: 为模版过滤器提供参数的方式是:过滤器后加个冒号,再紧跟参数,中间不能有空格! 目前只能为过滤器最多提供一个参数! 1. add 把add后的参数加给value。像这样: {{ value|add:"2" }} 如果value为
阅读全文
摘要:Django内置标签总览 可以查询下表来总览Django的内置标签: 1. autoescape 控制自动转义是否可用。参数是on或off。 该标签会以一个endautoescape作为结束标签. 例如: {% autoescape on %} {{ body }} {% endautoescape
阅读全文
摘要:本节将介绍Django模版系统的语法。Django模版语言致力于在性能和简单性上取得平衡。 如果你有过其它编程背景,或者使用过一些在HTML中直接混入程序代码的语言,那么你需要记住,Django的模版系统并不是简单的将Python嵌入到HTML中。 一、模板 模版是纯文本文件,可以生成任何基于文本的
阅读全文
摘要:CSV (Comma Separated Values),以纯文本形式存储数字和文本数据的存储方式。纯文本意味着该文件是一个字符序列,不含必须像二进制数字那样的数据。CSV文件由任意数目的记录组成,记录间以某种换行符分隔;每条记录由字段组成,字段间的分隔符是其它字符或字符串,最常见的是逗号或制表符。
阅读全文
摘要:可以通过开源的Python PDF库ReportLab来实现PDF文件的动态生成。 一、安装ReportLab ReportLab库在PyPI上提供,可以使用pip来安装: $ pip install reportlab 在Python交互解释器中导入它来测试安装: >>> import repor
阅读全文
摘要:Django在处理文件上传时,文件数据被打包封装在request.FILES中。 一、简单上传 首先,写一个form模型,它必须包含一个FileField: # forms.py from django import forms class UploadFileForm(forms.Form): t
阅读全文
摘要:类定义:class HttpResponse[source] HttpResponse类定义在django.http模块中。 HttpRequest对象由Django自动创建,而HttpResponse对象则由程序员手动创建. 我们编写的每个视图都要实例化、填充和返回一个HttpResponse对象
阅读全文
摘要:类的原型:class QueryDict[source] 在HttpRequest对象中,GET和POST属性都是一个django.http.QueryDict的实例。也就是说你可以按本文下面提供的方法操作request.POST和request.GET。 request.POST或request.
阅读全文
摘要:每当一个用户请求发送过来,Django将HTTP数据包中的相关内容,打包成为一个HttpRequest对象,并传递给每个视图函数作为第一位置参数,也就是request,供我们调用。 HttpRequest对象中包含了非常多的重要的信息和数据,应该熟练掌握它。 类定义:class HttpReques
阅读全文
摘要:视图函数,简称视图,本质上是一个简单的Python函数,它接受Web请求并且返回Web响应。 响应的内容可以是HTML网页、重定向、404错误,XML文档或图像等任何东西。但是,无论视图本身是个什么处理逻辑,最好都返回某种响应。 视图函数的代码写在哪里也无所谓,只要它在你的Python目录下面。但是
阅读全文
摘要:一、反向解析URL 在实际的Django项目中,经常需要获取某条URL,为生成的内容配置URL链接。 比如,我要在页面上展示一列文章列表,每个条目都是个超级链接,点击就进入该文章的详细页面。 现在我们的urlconf是这么配置的:^post/(?P<id>\d+)。 在前端中,这就需要为HTML的<
阅读全文
摘要:一、路由转发 通常,我们会在每个app里,各自创建一个urls.py路由模块,然后从根路由出发,将app所属的url请求,全部转发到相应的urls.py模块中。 例如,下面是Django网站本身的URLconf节选。 它包含许多其它URLconf: from django.conf.urls imp
阅读全文
摘要:URL是Web服务的入口,用户通过浏览器发送过来的任何请求,都是发送到一个指定的URL地址,然后被响应。 在Django项目中编写路由,就是向外暴露我们接收哪些URL的请求,除此之外的任何URL都不被处理,也没有返回。通俗地理解,不恰当的形容,URL路由是你的Web服务对外暴露的API。 Djang
阅读全文
摘要:一、实例 先看一个例子: from django.urls import path from . import views urlpatterns = [ path('articles/2003/', views.special_case_2003), path('articles/<int:yea
阅读全文
摘要:以下的方法不会返回QuerySets,但是作用非常强大,尤其是粗体显示的方法,需要背下来。 1. get() get(**kwargs) 返回按照查询参数匹配到的单个对象,参数的格式应该符合Field lookups的要求。 如果匹配到的对象个数不只一个的话,触发MultipleObjectsRet
阅读全文
摘要:字段查询是指如何指定SQL WHERE子句的内容。它们用作QuerySet的filter(), exclude()和get()方法的关键字参数。 默认查找类型为exact。 下表列出了所有的字段查询参数: 1. exact 精确匹配。 默认的查找类型! Entry.objects.get(id__e
阅读全文
摘要:本节将详细介绍查询集的API,它建立在下面的模型基础上,与上一节的模型相同: from django.db import models class Blog(models.Model): name = models.CharField(max_length=100) tagline = models
阅读全文
摘要:查询操作是Django的ORM框架中最重要的内容之一。我们建立模型、保存数据为的就是在需要的时候可以查询得到数据。Django自动为所有的模型提供了一套完善、方便、高效的API,一些重要的,我们要背下来,一些不常用的,要有印象,使用的时候可以快速查找参考手册。 本节的内容基于如下的一个博客应用模型:
阅读全文

浙公网安备 33010602011771号