Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
django 1.3中模板中的自定义分页问题_Django_Django Templates_Django 1.3 - Fatal编程技术网

django 1.3中模板中的自定义分页问题

django 1.3中模板中的自定义分页问题,django,django-templates,django-1.3,Django,Django Templates,Django 1.3,我正在做一个画廊,我有两个模特。如下 class Gallery(models.Model): name = models.CharField(max_length=200) pub_date = models.DateTimeField('date published', auto_now_add=True) slug_name = models.CharField(max_length=200) def __unicode__(self): r

我正在做一个画廊,我有两个模特。如下

class Gallery(models.Model):
    name = models.CharField(max_length=200)
    pub_date = models.DateTimeField('date published', auto_now_add=True)
    slug_name = models.CharField(max_length=200)
    def __unicode__(self):
        return self.name

class Image(models.Model):
    gallery = models.ForeignKey(Gallery)
    image = models.ImageField(upload_to='gallery/%Y/%m/%d')
    caption = models.TextField(blank=True)
    up_date = models.DateTimeField(auto_now_add=True)

    def __unicode__(self):
        return self.caption
现在我有了一个视图,它将服务于单个图像页面。我得到了这样的图像

def image_page(request, slug_name, image_id):
    image = Image.objects.get(pk = image_id)
    all = Gallery.objects.get(slug_name = slug_name).image_set.all()
    return render_to_response('gallery/image_page.html',
                              {
                                  'image': image,
                                  'all': all,
                              }, context_instance = RequestContext(request))
通过图像,我得到了一张图像。总之,我得到了视图中显示分页可能需要的所有图像。分页仅表示下一个和上一个按钮

现在,如果这一页是第一页,则上一页链接不应显示,如果最后一页下一页按钮不应显示,则上一页链接不应显示。否则,两个链接都应显示

我的问题是如何在模板中完成它?我尝试使用for循环不起作用,还有一个问题是如何链接到下一个/上一个图像我的URL查找/gallery/slug\u name/image\u id.html[注意:我的图像id不是像1,2,3那样逐渐增长的,例如我在一个画廊中有4个图像,id是4,6,7,8]

顺便说一句,我尝试了@murgatroid99方法。它工作得很好!但实际上,我必须像这样使用url

http://localhost:8000/gallery/fourth-gallery/hello?image=2
我想要的是像这样使用分页和url

http://localhost:8000/gallery/1, http://localhost:8000/gallery/2, http://localhost:8000/gallery/3 Etc

最好的方法可能是让视图根据请求中的信息生成页面,然后让模板呈现视图返回的页面。可以在中找到一个很好的解释和示例。

您不应该将all用作变量,因为python中有一个内置函数。 看这里


您可以使用django的分页来显示图像。在您的情况下,pagesize将为1,因为每页显示1个图像对象。Django分页具有内置功能,可以查找下一个或上一个可用或不可用的位置

但我该如何从其他页面链接这些内容呢?现在我正在做的是一个FB风格的画廊系统。第一页显示所有库。单击某个图库将打开一个页面,其中将显示该图库的所有图像。此图像中的任何一个都链接到单个图像页面。当它在任何图像页面分页链接应该工作是的,我已经这样做了。问题是,当我使用分页时,得到的url是这样的[]。但我需要和分页应该像2,3,4等工作时点击下一步按钮。