我想将 NEXT 和 PREV 链接放到我的详细信息页面,以便轻松访问上一个或下一个项目。我不想用 DATE 或 ID 来做,因为这完全不切实际。
我不想使用:
Model.get_next_by_FOO(**kwargs)
Model.get_previous_by_FOO(**kwargs)
如何使用例如数字设置列并按此排序。如果我做整数,它会排序如下:
1 12 13 14 2 21 24 3 等....也不起作用。
CMS 中的用户指定顺序最简单的方法是什么,它将对其进行排序,然后我可以使用 NEXT 和 PREV。
模型.py
class Art(models.Model):
pub_date = models.DateTimeField('date published')
title = models.CharField(max_length=200)
title_url = models.SlugField(max_length=200)
image = models.ImageField(blank=True, null=True, upload_to='uploaded_images')
graphics = models.ImageField(upload_to='images/art/',blank=True)
def image_thumbnail(self):
return '<a href="/media/%s" target="_blank"><img width="160px" src="/media/%s"/></a>' % (self.graphics, self.graphics)
image_thumbnail.allow_tags = True
image_thumbnail.short_description = 'graphics'
description = models.TextField(blank=True)
def __unicode__(self):
return self.title
视图.py
def artdetail(request, art_title_url):
art = Art.objects.all().filter(title_url=art_title_url)
return render_to_response('nart-detail.html', {'art':art)
在这个例子中,我如何在模板中制作下一个和上一个按钮以获取下一个或上一个对象,如果我到最后它将隐藏下一个按钮等....
我主要关心的是通过排序(数字列)使其正确,我想错了,我想知道如何实现这一点的最佳方法,用户对轻松定制感到满意。