我使用的是Django 1.6.5,并且有MySQL的常规查询登录,这样我就可以看到sql正在访问MySQL。
我注意到在Django的QuerySet中指定更大的限制是行不通的:
>>> from blog.models import Author
>>> len(Author.objects.filter(pk__gt=0)[0:999])
>>> len(Author.objects.all()[0:999])
MySQL的一般日志显示这两个查询都有LIMIT 21
。
但小于21的限制将起作用,例如,len(Author.objects.all()[0:10])
将生成一个具有LIMIT 10
的sql。
为什么?有什么我需要配置的吗?
我为自己使用和工作的补偿和限制:)
例如:
Django使用Python的数组切片语法实现
OFFSET
。如果要偏移前10个元素,然后显示下5个元素,请使用它例如,如果希望在偏移量为10后检查5个作者,则代码将如下所示:
你可以阅读更多关于它的内容here in the official Django doc
当您从shell进行查询时,就会发生这种情况-在调试时,添加
LIMIT
子句以停止您的终端填满数千条记录:(Source)
相关问题 更多 >
编程相关推荐