8

我有以下代码:

    {% for item in profile.jobs.all %}
        {% if not forloop.first %}, {% endif %}{{ item }}
    {% endfor %}

这会产生如下内容:

"Programmer , Plumber , Philosopher"

我不想要逗号之前的前导空格,但我能够摆脱它的唯一方法是将它压缩到一行,这会降低可读性:

{% for item in profile.jobs.all %}{% if not forloop.first %}, {% endif %}{{ item }}{% endfor %}

有没有更好的方法来处理这个问题?

4

3 回答 3

4

{% spaceless %} 只去除 html 标签之间的空格。

您可以使用 {{ value|join:", " }}

或者我相信这会起作用:

{% for item in profile.jobs.all %}
    {% if not forloop.first %}, {% endif %}
    {{ item }}
{% endfor %}
于 2012-07-07T10:50:31.633 回答
1

试试 {% spaceless %} 模板标签:https ://docs.djangoproject.com/en/dev/ref/templates/builtins/?from=olddocs#spaceless

于 2012-07-07T08:48:25.567 回答
0

如果你使用类似的东西怎么办

{% if profile.jobs.count != 1 %}
    {% for item in profile.jobs.all %}
        {{ item }}{% if not forloop.last %}, {% endif %}
    {% endfor %}
{% else %}
    {{item}}
{% endif %}
于 2012-07-07T10:57:53.523 回答