Django 模板转换为字符串
Django template convert to string
有没有办法在 django 模板中将数字转换为字符串?或者我是否需要制作自定义模板标签。类似于:
{{ 1|stringify }} # '1'
您可以使用 stringformat
将变量转换为字符串:
{{ value|stringformat:"i" }}
有关格式化选项,请参阅 documentation(不应包括前导 %
)。
您可以使用 {{ value|slugify }}
(https://docs.djangoproject.com/en/1.10/ref/templates/builtins/)。
只需创建一个新的模板标签
from django import template
register = template.Library()
@register.filter
def to_str(value):
"""converts int to string"""
return str(value)
然后转到您的模板并在文件顶部添加
{% load to_str %}
<!-- add the filter to convert the value to string-->
{% number_variable|to_str %}
您可以简单地使用一些自定义过滤器
# app/templatetags/tags.py
from django import template
register = template.Library()
@register.filter
def toInt(string):
return int(string)
@register.filter
def toStr(integer):
return str(integer)
然后在你的模板中这样做
{% load tags %}
<p>Int to Str : {{ 1|toStr }}</p>
<p>Str to Int : {{ '1'|toInt }}</p>
有没有办法在 django 模板中将数字转换为字符串?或者我是否需要制作自定义模板标签。类似于:
{{ 1|stringify }} # '1'
您可以使用 stringformat
将变量转换为字符串:
{{ value|stringformat:"i" }}
有关格式化选项,请参阅 documentation(不应包括前导 %
)。
您可以使用 {{ value|slugify }}
(https://docs.djangoproject.com/en/1.10/ref/templates/builtins/)。
只需创建一个新的模板标签
from django import template
register = template.Library()
@register.filter
def to_str(value):
"""converts int to string"""
return str(value)
然后转到您的模板并在文件顶部添加
{% load to_str %}
<!-- add the filter to convert the value to string-->
{% number_variable|to_str %}
您可以简单地使用一些自定义过滤器
# app/templatetags/tags.py
from django import template
register = template.Library()
@register.filter
def toInt(string):
return int(string)
@register.filter
def toStr(integer):
return str(integer)
然后在你的模板中这样做
{% load tags %}
<p>Int to Str : {{ 1|toStr }}</p>
<p>Str to Int : {{ '1'|toInt }}</p>