我的模特:
class Player(models.Model):
player_name = models.CharField(max_length=50)
player_email = models.CharField(max_length=50)
def __unicode__(self):
return self.player_name
我的根urls.py
urlpatterns = patterns('',
(r'^kroster/', include('djangosite.kroster.urls')),
(r'^admin/(.*)', admin.site.root),
)
我的kroster urls.py
:
from djangosite.kroster.models import Player
info_dict = {
'queryset': Player.objects.all(),
}
urlpatterns = patterns('',
(r'^$', 'django.views.generic.list_detail.object_list', info_dict),
(r'^(?P<object_id>\d+)/$', 'django.views.generic.list_detail.object_detail', info_dict),
)
我的player_list.html
模板:
<h1>Player List</h1>
{% if error_message %}<p><strong>{{ error_message }}</strong></p>{% endif %}
<ul>
{% for player in object.player_set.all %}
<li id="{{ player.id }}">{{ forloop.counter }} .) {{ player }}</li>
{% endfor %}
</ul>
可悲的是我的模板输出就是这个。
<h1>Player List</h1>
<ul>
</ul>
如果这是一个愚蠢的错误,请道歉。我的模板一定有问题。
答案 0 :(得分:1)
列表视图的变量(除非另有说明)是object_list
。
详情请见object
。此外,您还需要另一个详细信息视图模板。默认情况下,模板名称为:<app_label>/<model_name>_detail.html
(除非您以不同方式指定)
所有内容都在 Generic views 中。
答案 1 :(得分:0)
您的模板应该是这样的:
<h1>Player List</h1>
{% if error_message %}<p><strong>{{ error_message }}</strong></p>{% endif %}
<ul>
{% for player in object_list %}
<li id="{{ player.id }}">{{ forloop.counter }} .) {{ player }}</li>
{% endfor %}
</ul>