Django template 过滤器】的更多相关文章

转载自: http://www.lidongkui.com/django-template-filter-table 一.形式:小写 {{ name | lower }} 二.过滤器是可以嵌套的,字符串经过三个过滤器,第一个过滤器转换为小写,第二个过滤器输出首字母,第三个过滤器将首字母转换成大写 标签 {{ str|lower|first|upper }} 三.过滤器的参数 显示前30个字 {{ bio | truncatewords:"30" }} 格式化 {{ pub_date |…
一.模板基本元素 1.例子程序 1)urls.py中新增部分 from django.conf.urls import patterns, url, include urlpatterns = patterns('', #... (r'^template_use/$', 'django_web_app.views.template_use'), ) 2)views.py中新增部分 def template_use(request): person_name='jimfeng' company='…
前面的章节我们看到如何在视图中返回HTML,但是HTML是硬编码在Python代码中的 这会导致几个问题: 1,显然,任何页面的改动会牵扯到Python代码的改动 网站的设计改动会比Python代码改动更频繁,所以如果我们将两者分离开会更方便 2,其次,写后台Python代码与设计HTML是不同的工作,更专业的Web开发应该将两者分开 页面设计者和HTML/CSS程序员不应该编辑Python代码,他们应该与HTML打交道 3,程序员写Python代码同时页面设计者写HTML模板会更高效,而不是一…
自定义template过滤器的方法参考文档,不再赘述 is_safe 文档说明过滤的两种最终形态,其中一种是设置register.filter(is_safe=True),但是对is_safe的具体作用说的云山雾绕的,而查了些博文只是简单的说is_safe可以关闭掉自动转义(这个说法是错误的!) 我尝试了加或者不加is_safe的效果 @register.filter def demo(value): return '<br>' + value @register.filter(is_safe…
一.模板组成 组成:HTML代码 + 逻辑控制代码 二.逻辑控制代码的组成 1.变量 语法格式 : {{ name }} # 使用双大括号来引用变量 1.Template和Context对象(不推荐使用) from django.template import Context, Template t = Template('My name is {{ name }}.') c = Context({'name': 'Stephane'}) t.render(c) # in HTML 'My na…
代码布局 有的时候框架给的过滤器不够用,需要自定义一些过滤器,所以就需要我们自己来定义一些过滤器等 自定义代码放置的路径 某个app特用(独有)的 - app 目录下的 templatetags文件夹内(文件夹内需要有__init__.py文件) 公用的 - 再创建一个新的app,然后在新的app中创建templatetags(固定的单词写法)文件夹,但是需要在setting文件中的INSTALL_APPS中注册,然后就可以应用了 自定义模板过滤器 定义过滤器 在templatetags的文件夹…
前提:自定义模板标签和过滤器必须位于Django的某个应用中,这个应用可以包含一个templatetags目录, 和models.py views.py 处于同一级目录.若这个templatetags目录不存在则创建他,同时在该目录下建立一个py文件:__init__.py 文件,使得该目录可以作为Python包.在添加这个模块后,需要重启服务器以便使用.注意命名不要冲突.eg: polls/ __init__.py models.py templatetags/ 在模板中可以这样用:{% lo…
代码布局(自定义的代码,放在哪里) 二种方式:1. 某个app特有的 -app 目录下,templatetags 文件夹     ** 必需是这个名称的包(目录中有__init__.py文件) -再到 templatetags 文件夹下创建python模块(py文件)2. 定义复用 -创建一个新的app,将他们定义在新的app中,在INSTALL_APPS 注册,然后就可以应用 -在 templatetags 文件夹下新建  tags.py   #文件名自己取 以下为文件内容: # 自定义模板标…
模版常用过滤器 在模版中,有时候需要对一些数据进行处理以后才能使用.一般在Python中我们是通过函数的形式来完成的.而在模版中,则是通过过滤器来实现的.过滤器使用的是|来使用.比如使用add过滤器,那么示例代码如下: {{ value|add:"2" }} 那么以下就讲下在开发中常用的过滤器. add 将传进来的参数添加到原来的值上面.这个过滤器会尝试将值和参数转换成整形然后进行相加.如果转换成整形过程中失败了,那么会将值和参数进行拼接.如果是字符串,那么会拼接成字符串,如果是列表,…
django内置标签 autoescape 控制当前的自动转义行为.这个标记可以作为参数打开或关闭,它决定自动转义是否在块内有效.块使用endautoescape结束标记关闭. 当自动转义生效时,所有变量内容在将结果放入输出之前(但是在应用了任何过滤器之后)都要对其应用HTML转义.这相当于手动将转义过滤器应用到每个变量. 唯一的例外是那些已经被标记为"安全"的变量,它们不会被转义,或者被填充变量的代码转义,或者因为它已经应用了安全或转义过滤器. # 转义,显示普通字符串,不会解析成h…