9-b*_*its 7 django django-templates django-template-filters
有没有办法在django模板中获取给定数字的多个数字?
例如:
{{ some_num|get_digit:2 }}
Run Code Online (Sandbox Code Playgroud)
会给你第二个最右边的数字.对于1224531,它将是3
有没有办法获得最后3位数或前5位数?像python的切片?
就像是:
{{ some_num|get_digits:2,5}}
Run Code Online (Sandbox Code Playgroud)
Ste*_*ano 22
有一个"切片"模板标签
https://docs.djangoproject.com/en/dev/ref/templates/builtins/#slice
它使用与Python列表切片相同的语法.
例:
{{ some_list|slice:":2" }}
Run Code Online (Sandbox Code Playgroud)
在python中这相当于:
some_list[:2]
Run Code Online (Sandbox Code Playgroud)
顺便说一句,你的第二个例子"2:5"不是"2,5"
NB.Python切片适用于任何"序列".字符串和列表是序列.数字不是!
任何在切片之前将数字转换为字符串的额外过滤器都可以工作。我使用了这些变体:
{{ some_num|slugify|slice:"2:5" }}
Run Code Online (Sandbox Code Playgroud)
和
{{ some_num|stringformat:"d"|slice:"5:10" }}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15840 次 |
| 最近记录: |