Answers:
使用名为标题的 Django内置模板过滤器
{{ "myname"|title }}
如果您有多个字词(例如所有大写字母),此解决方案也适用:
{{ "ALL CAPS SENTENCE"|lower|capfirst }}
这将输出“全部大写句子”。
该title
过滤器工作正常,但如果你有一个多字的字符串,如:"some random text"
,其结果将是"Some Random Text"
。如果您真正想要的只是将整个字符串的第一个字母大写,则应创建自己的自定义过滤器。
您可以创建一个这样的过滤器(按照有关如何从此文档创建自定义模板过滤器的说明-非常简单):
# yourapp/templatetags/my_filters.py
from django import template
register = template.Library()
@register.filter()
def upfirstletter(value):
first = value[0] if len(value) > 0 else ''
remaining = value[1:] if len(value) > 1 else ''
return first.upper() + remaining
然后,您应该在模板上加载my_filters文件,并使用在那里定义的过滤器:
{% load my_filters %}
...
{{ myname|upfirstletter }}
|capfirst
只需{{myname | capfirst}}
在Django中使用模板过滤器capfirst,就可以将给定字符串的首字母大写。