Использование сложных переменных в шаблонах Django - PullRequest
0 голосов
/ 23 февраля 2011

В приведенном ниже шаблоне user.group - это число, и оно должно быть показано как group_name.get (user.group) Есть ли возможность перейти к шаблону group_name диктовать и использовать group_name.get (user.group) внутри шаблона?

<table>
{% for user in users %}
<tr>    
    <td>{{ user.name }}</td>
    <td>{{ user.age }}</td>
    <td>{{ user.group}}</td>
</tr> 
{% endfor %}
</table>

Ответы [ 2 ]

0 голосов
/ 23 февраля 2011

Нет, точечная запись не позволяет искать имена по значению переменной.

Я бы сделал это в представлении, если оно относится к этому одному шаблону.

for user in users:
    users.group_name = group_name.get(user.group)


{% for user in users %}
    {{ user.group_name }}
{% endfor %}

Если это применимо ко всем пользователям, сделайте, как предложено jammon, и определите метод на User

Из любопытства могу я увидеть ваши модели? Просто любопытно, почему группа это число и откуда взято group_name.

0 голосов
/ 23 февраля 2011

В духе django эта логика должна жить в коде, а не в шаблоне. Не можете ли вы добавить метод user.get_group(), который возвращает группу?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...