编辑:我用Av4t4r的代码修复了views.py,但是它仍然没有显示任何内容。当我在voodoo.html中键入某些内容时,它实际上显示了内容,但是{%块内容%}中的所有内容都没有显示。为什么?
你好,我试图制作一个简单的图库应用程序,其中第一个视图(listview)是所有用户(即对象)的列表,当用户单击其中一个时,它使用给定的pk/id键进入下一页。但说到那一页..。内容是空白的。以下是我所拥有的:
urls.py:
urlpatterns = [
url(r'^$', ListView.as_view(queryset=Images.objects.all(), template_name='imgboard/home.html')),
url(r'^imgboard/(?P<id>\d+)/$', views.voodoofunction, name='voodoofunction'),
]
views.py (我觉得这就是问题所在):
def voodoofunction(request, id=None):
instance = get_object_or_404(Moreimages, id=id)
context = { "object_list": instance, }
return render(request, "imgboard/voodoo.html", context)
models.py
class Images(models.Model):
name_person = models.CharField(max_length=70)
instagram = models.CharField(max_length=200)
img_url = models.CharField(max_length=500)
def __unicode__(self):
return self.name_person
class Meta:
verbose_name_plural = 'Images'
class Moreimages(models.Model):
key = models.ForeignKey(Images, on_delete=models.CASCADE)
img_url = models.CharField(max_length=500)
def __unicode__(self):
return str(self.key)
class Meta:
verbose_name_plural = "More Images"
listview_code.html
{% block content %}
{% for object in object_list %}
<p><a href="/imgboard/{{object.id}}">{{object.name_person}}</a></p>
{% endfor %}
{% endblock %}
voodoo.html:
{% block content %}
<h2>{{ object.name_person}}<br></h2>
<h4><a href="{{object.instagram}}">{{object.instagram}}</a></p></h4>
<br>
{% for object in object_list %}
<p><img src="{{object.img_url}}", width=350, height="360></img>"</p>
{% endfor %}
{% endblock %}
发布于 2016-09-06 04:32:43
您的上下文中没有“对象”。您的"object_list“是一个实例,而不是一个列表(因此for循环什么也不做)。
https://stackoverflow.com/questions/39338952
复制相似问题