[BUG] pydantic.errors.PydanticUserError: `QueryParams` 未完全定义;您应该定义 `ModelFilterSchema`, 然后调用 `QueryParams.model_rebuild()`。
作者: tomas-antal-ic创建于 2026年4月20日更新于 2026年6月4日
描述错误: 在分页和过滤的端点中似乎存在问题。虽然以下代码可以正常运行:
@api.get("/models", response=List[ModelSchema])
def list_models(request, filters: ModelFilterSchema = Query(...)) -> List[ModelSchema]:
models = Model.objects.all()
models = filters.filter(models)
return models以下代码也可以正常运行:
@api.get("/models", response=List[ModelSchema])
@paginate
def list_models(request):
models = Model.objects.all()
return models以下代码会失败:
@api.get("/models", response=List[ModelSchema])
@paginate
def list_models(request, filters: ModelFilterSchema = Query(...)) -> List[ModelSchema]:
models = Model.objects.all()
models = filters.filter(models)
return models```pydantic.errors.PydanticUserError: QueryParams 未完全定义;您应该定义 ModelFilterSchema, 然后调用 QueryParams.model_rebuild()。
内容来源: vitalik/django-ninja