Пример #1
0
    @validates_schema(pass_original=True)
    def validate_schema(self, data, original):
        self.validate_permission(data, original)


class UserCreateSchema(UserSchema):
    username = fields.String(required=True)
    email = fields.String(required=True)
    password = fields.String(required=True, load_only=True)

    class Meta:
        fields = Users.get_admin_columns(Method.CREATE)


create_user_admin_serializer = ResourceUserSchema(UserCreateSchema)

create_user_serializer = ResourceUserSchema(
    UserCreateSchema, param={'only': Users.get_columns(Method.CREATE, Role.GUEST)}
)

edit_user_admin_serializer = ResourceUserSchema(UserSchema)

edit_user_profile_serializer = ResourceUserSchema(
    UserSchema, param={'only': Users.get_columns(Method.UPDATE, Role.USER)}
)

read_user_serializer = ResourceUserSchema(
    UserSchema, param={'only': Users.get_columns(Method.READ, Role.GUEST)}
)