def get(self): schema = UserSchema(many=True) args = request.args page_id = int(args["page"]) if args.get("page") else 1 page_size = int(args["page_size"]) if args.get("page_size") and args.get("page_size") < 1 \ else 10 try: users = User.objects() count = users.count() if count == 0: return resp_does_not_exist_resources("User", "usuário") if count <= ((page_id-1)*page_size): page_id = ceil(count/page_size) users = users.paginate(page_id, page_size) except FieldDoesNotExist as e: return resp_exception("Users", description=e.__str__()+"field") except Exception as e: return resp_exception("Users", description=e.__str__()) extra = { "page": users.page, "pages": users.pages, "total": users.total, "params": {"page_size":page_size} } result = schema.dump(users.items) return resp_ok( "Users", MSG_RESOURCE_FETCHED_PAGINATED.format("Usuários"), result, **extra)