6.30.15 - 我如何使这个问题更好,更有益于其他人?反馈会有所帮助。谢谢!
我需要为Django Rest Framework设置自定义分页。我创建了一个pagination.py文件,并将分页设置放在一个类下面。
在Settings.py中,我必须使用' DEFAULT_PAGINATION_CLASS'指向它。但是,我无法获取settings.py来查找它。即使我已经指定了路径。在文档中,我注意到有类似的app.core.pagination'路径 - 我是否必须创建此文件? 我需要在哪里放置这些以便settings.py可以读取它?
'DEFAULT_PAGINATION_CLASS':
'XXXX_XX_api.static.rest_framework.pagination.CustomPagination'
更新:6.22.15 我将自定义分页添加到我的设置文件中,但现在我收到了一个奇怪的错误。而且我不确定为什么。在我的代码中,一切似乎都是正确的。在错误中它读取自定义分页,但它表示分页没有定义。有什么想法吗?
File "/home/dbadmin/epic_ar_api/epic_ar_api/epic_ar_api/pagination.py", line 5, in <module>
class CustomPagination(pagination.LimitOffsetPagination):
NameError: name 'pagination' is not defined
[22/Jun/2015 13:29:24] "GET /machines/ HTTP/1.1" 500 59
^Cdbadmin@ubuntu:~/epic_ar_api/epic_ar_api$
答案 0 :(得分:1)
您需要在DEFAULT_PAGINATION_CLASS
设置词典的全局settings.py
文件中添加REST_FRAMEWORK
设置。
假设我的CustomPagination
班级位于pagination.py
my_app
的{{1}}个文件中。然后我可以做到以下几点:
my_project
#Update:
将以下行添加到 REST_FRAMEWORK = {
'DEFAULT_PAGINATION_CLASS': 'my_project.my_app.pagination.CustomPagination',
'PAGE_SIZE': 100
}
文件中:
pagination.py
这将导入默认的rest_framework分页。