Stonelee's Blog

如无必要,勿增实体

GAE中使用自定义filter,实现文字截断

分享到: 更多

来自于 http://daily.profeth.de/2008/04/using-custom-django-template-helpers.html,原网站被墙,故记录于此

目录结构:

templatefilters.py实现只显示固定数目文字的功能

1
2
3
4
5
6
7
8
9
10
11
12
13
from google.appengine.ext import webapp
register = webapp.template.create_template_register()

def truncate(value,maxsize,stopper = '...'):
    """ truncates a string to a given maximum
        size and appends the stopper if needed """
    stoplen = len(stopper)
    if len(value) > maxsize and maxsize > stoplen:
       return value[:(maxsize-stoplen)] + stopper
    else:
       return value[:maxsize]

register.filter(truncate)

base.py中注册此filter

1
webapp.template.register_template_library('common.templatefilters')

html中可以使用该filter了

1
{ { somevalue|truncate:20 } }

Comments