示例#1
0
文件: audit.py 项目: PyBulls/OTM2
def add_default_permissions(instance, roles=None, models=None):
    # Audit is imported into models, so models can't be imported up top
    from treemap.models import MapFeature
    if roles is None:
        roles = Role.objects.filter(instance=instance)
    if models is None:
        # MapFeature is "Authorizable", but it is effectively abstract
        # Only it's subclasses should have permissions added
        models = all_subclasses(Authorizable) - {MapFeature}

    for role in roles:
        _add_default_permissions(models, role, instance)
示例#2
0
文件: audit.py 项目: fagan2888/OTM2
def add_default_permissions(instance, roles=None, models=None):
    # Audit is imported into models, so models can't be imported up top
    from treemap.models import MapFeature
    if roles is None:
        roles = Role.objects.filter(instance=instance)
    if models is None:
        # MapFeature is "Authorizable", but it is effectively abstract
        # Only it's subclasses should have permissions added
        models = all_subclasses(Authorizable) - {MapFeature}

    for role in roles:
        _add_default_permissions(models, role, instance)
示例#3
0
文件: audit.py 项目: PyBulls/OTM2
def _get_model_class(class_dict, cls, model_name):
    """
    Convert a model name (as a string) into the model class
    """
    if model_name.startswith('udf:'):
        from udf import UserDefinedCollectionValue
        return UserDefinedCollectionValue

    if not class_dict:
        # One-time load of class dictionary
        for c in all_subclasses(cls):
            class_dict[c.__name__] = c

    return class_dict[model_name]
示例#4
0
文件: audit.py 项目: fagan2888/OTM2
def _get_model_class(class_dict, cls, model_name):
    """
    Convert a model name (as a string) into the model class
    """
    if model_name.startswith('udf:'):
        from udf import UserDefinedCollectionValue
        return UserDefinedCollectionValue

    if not class_dict:
        # One-time load of class dictionary
        for c in all_subclasses(cls):
            class_dict[c.__name__] = c

    return class_dict[model_name]