Python源码示例:django.forms()

示例1
def raw_validation(error):
    """
    Deconstruct a django.forms.ValidationError into a primitive structure
    eg, plain dicts and lists.
    """
    if isinstance(error, ValidationError):
        if hasattr(error, 'error_dict'):
            error = error.error_dict
        elif not hasattr(error, 'message'):
            error = error.error_list
        else:
            error = error.message

    if isinstance(error, dict):
        return {key: raw_validation(value) for key, value in error.items()}
    elif isinstance(error, list):
        return [raw_validation(value) for value in error]
    else:
        return error