2012-11-19 69 views
0

我想打印我的所有用戶和他們的組模板的信息,像這樣:打印用戶羣體

 {% for user in users %} 
     <tr> 
      <td>(there should be enumerate here - 1,2,3,4 etc...)</td> 
      <td>{{ user.last_name }}</td> 
      <td>{{ user.first_name }}</td> 
      <td> 
      {% for group in user.groups %} 
      {{ group }}, </td> 
      {% endfor %} 
     </tr> 
     {% endfor %} 

,但它不工作:

「ManyRelatedManager」對象是不是可迭代

我有兩個其他問題: 1.我怎樣才能輕鬆地枚舉用戶,像這樣:

<tr> 
     <td>1</td> 
     <td>Kowalski</td> 
     <td>John</td> 
     ... 
    </tr> 
    <tr> 
     <td>2</td> 
     <td>Smith</td> 
     <td>John</td> 
     ... 
    </tr> 
     ... 

2.如何打印這樣的羣體:

1組,第2組,第3組

代替

1組,第2組,第3組, (最後一個逗號是錯的)

非常感謝。

回答

2

下面的代碼應該做你所要求的一切:

{% for user in users %} 
    <tr> 
     <td>{{ forloop.counter }}</td> 
     <td>{{ user.last_name }}</td> 
     <td>{{ user.first_name }}</td> 
     <td> 
      {% for group in user.groups.all %} 
       {{ group }} 
       {% if not forloop.last %},{% endif %} 
      {% endfor %} 
     </td> 
    </tr> 
{% endfor %} 

退房從官方文檔以下鏈接瞭解更多有關內建for循環變量:https://docs.djangoproject.com/en/dev/ref/templates/builtins/#for

3

你應該改變

{% for group in user.groups.all %} 
{{group}} 
+0

謝謝,它的工作原理!你有任何想法列舉? –