Django在模板中显示和格式化组名

时间:2017-06-13 17:09:53

标签: django django-templates django-template-filters

在我的模板中正确格式化此信息时出现问题。我已经广泛搜索了谷歌和堆栈溢出,但我无法解决这个问题。

我正在使用django-role-permissions,我创建了一堆角色,分配给每个用户的组。我希望在我的模板上显示他们所在的所有组,并在其间使用逗号。我还想用空格换掉名字之间的'_'。我最接近的是让组名如下所示:

Driver Freight_manager System_admin Employee_manager

我尝试了一些自定义模板标签但是所有内容都将其拆分为一个单独的字符,其中包含','。最终,我希望它看起来如下,但我无法弄清楚:

Driver, Freight Manager, System Admin, Employee Manager

这是我的模板代码:

{% for g in profile_detail.user.groups.all %}
     {{ g.name|capfirst }}
{% endfor %}

我假设我可以在模板中执行此操作,而不必修改视图。有人可以帮我使用模板标签或其他东西让这个工作吗?这让我疯了。

1 个答案:

答案 0 :(得分:0)

制作模板标签:

@register.filter(name='split')
def split(value, arg):
    return " ".join(value.split(arg)).title()

<强> HTML

 {% load <file name of template tag> %}
    {% for g in profile_detail.user.groups.all %}
             {{ g.name|split:'_' }},
    {% endfor %}