您好我正在尝试创建一个简单的图库应用程序,其中第一个视图(列表视图)是所有人员(列出对象)的列表,当用户点击其中一个时,它会进入下一页给定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 %}
答案 0 :(得分:0)
您的上下文中没有“对象”。而你的“object_list”是一个实例,而不是一个列表(所以你的for循环什么都不做)。