async def post(self, request): user = User(request.json, strict=True) try: user.validate() except BaseError as ex: raise InvalidUsage(f'Error in data: {ex.to_primitive()}') user = await db_api.add_user(user.to_native()) return json(user, status=201)
async def put(self, request, user_id): user_id = UserById({'user_id': user_id}).user_id user = User(request.json, strict=True) try: user.validate() except BaseError as ex: raise InvalidUsage(f'Error in data: {ex.to_primitive()}') user = db_api.update_user_by_id(user_id, user.to_native()) return json(user, status=200)