我在Django REST Framework应用程序中创建了一个新的列表视图:
class ColumnView(ListCreateAPIView):
queryset = Column.objects.all()
serializer_class = ColumnSerializer
permission_classes = [IsAuthenticatedOrReadOnly]
def perform_create(self, serializer):
serializer.save(user=self.request.user)
当我尝试访问它时,我得到以下错误:
/my/new/endpoint处的FieldError
无法将关键字"created"解析到字段中。选项包括:订单、字段、来自、我的、型号(_O(
看不到任何created
字段-不在ColumnSerializer
中,不在Column
Django模型中,任何地方。stacktrace也很不透明——我的应用程序没有出现在它的任何地方。发生了什么?
您在设置中启用了光标分页吗?
REST_FRAMEWORK = {
...
'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.CursorPagination',
...
}
请务必仔细阅读CursorPagination上的文档:
详细信息和限制
正确使用基于光标的分页需要稍微注意细节。您需要考虑您希望该方案适用于哪些订单。默认情况是按"-创建";。这假设模型实例上必须有一个"创建"的时间戳字段,并将显示一个";时间线";样式分页视图,首先显示最近添加的项。
换句话说,你不可能同时具备这三个条件:
- 使用光标分页
- 。。。不指定顺序
- 。。。关于没有
created
场的模型