Django反向查询OFFSET 1

时间:2015-11-27 09:15:46

标签: python sql django reverse offset

在撤消查询时,我遇到了OFFSET的问题。我正在使用Django 1.8和Python 2.7。 以下两行代码不会 OFFSET反向查询1。但是两者都会OFFSET大于1的任何内容。

Article.objects.all().order_by('-id')[:2:1]
Article.objects.all().order_by('id').reverse()[:2:1]

方括号中的第二个数字是OFFSET,第一个是LIMIT。如果我在OFFSET中放置2,则查询偏移量为2,但是当我在OFFSET中放置1时,查询偏移为0. 我如何OFFSET减1?是否存在错误django框架?

1 个答案:

答案 0 :(得分:1)

您误解了切片语法。它与列表完全相同。它是第一个参数,但你完全省略了该参数;您只提供了第二个(结束)和第三个(步骤)值。

您的代码应为:

Article.objects.all().order_by('-id')[1:2]

或只是

Article.objects.all().order_by('-id')[1]