哪个更好?django python中的分页还是手动结果集切片?
我有一个结果集,我想在它上面实现某种分页。我知道django有Paginator,但作为另一种方式,我也可以有自己的实现,即切片结果集以支持分页。所以我想我可以有下面提到的两种不同的方法 使用分页器:哪个更好?django python中的分页还是手动结果集切片?,python,django,pagination,slice,Python,Django,Pagination,Slice,我有一个结果集,我想在它上面实现某种分页。我知道django有Paginator,但作为另一种方式,我也可以有自己的实现,即切片结果集以支持分页。所以我想我可以有下面提到的两种不同的方法 使用分页器: paginator = Paginator(messages, 10) messages = paginator.page(2) 或者切片 messages = messages[start:start+10] 在这两种方法中,哪一种在性能方面更有效。我认为使用django分页会更好,但在使用
paginator = Paginator(messages, 10)
messages = paginator.page(2)
或者切片
messages = messages[start:start+10]
在这两种方法中,哪一种在性能方面更有效。我认为使用django分页会更好,但在使用它之前,我只想知道哪种方式更好
我可以自己尝试这两种方法,但实际上我只是想在开始实施之前提前知道,这有助于节省时间
有什么想法吗?Paginator在封面下进行切片,但还实现了一些其他方便的功能。因此,如果您不想发明轮子,请使用Paginator。如果分页也在内部执行切片,并且如果我不需要太多其他方便的功能,那么手动切片会更好吗?我问这个问题是因为我在检查性能。我打赌你最终会实现所有这些微小的功能,比如
有其他页面
,开始索引
等等。大多数情况下,所有的瓶颈都在db中,我怀疑你会看到性能上的差异。