本文整理汇总了Python中core.db.connection.DataHubConnection.delete_collaborator方法的典型用法代码示例。如果您正苦于以下问题:Python DataHubConnection.delete_collaborator方法的具体用法?Python DataHubConnection.delete_collaborator怎么用?Python DataHubConnection.delete_collaborator使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类core.db.connection.DataHubConnection
的用法示例。
在下文中一共展示了DataHubConnection.delete_collaborator方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: delete_collaborator
# 需要导入模块: from core.db.connection import DataHubConnection [as 别名]
# 或者: from core.db.connection.DataHubConnection import delete_collaborator [as 别名]
def delete_collaborator(self, repo, collaborator):
superuser_con = DataHubConnection(
user=settings.DATABASES['default']['USER'],
password=settings.DATABASES['default']['USER'],
repo_base=self.repo_base)
repo_collaborators = superuser_con.list_collaborators(repo=repo)
# The reason we're enforcing permission checks this way is to deal
# with the edge case where a user removes himself as a collaborator
# from another user's repo.
if collaborator not in repo_collaborators:
raise Exception('Failed to delete collaborator.'
' %s is not a collaborator in the specified'
'repository.' % collaborator)
if self.username != collaborator and self.username != self.repo_base:
raise PermissionDenied(
'Access denied. Missing required privileges')
collab = User.objects.get(username=collaborator)
Collaborator.objects.get(
user=collab, repo_name=repo, repo_base=self.repo_base).delete()
return superuser_con.delete_collaborator(
repo=repo, collaborator=collaborator)
示例2: __init__
# 需要导入模块: from core.db.connection import DataHubConnection [as 别名]
# 或者: from core.db.connection.DataHubConnection import delete_collaborator [as 别名]
class DataHubManager:
def __init__(self, user, repo_base=None, is_app=False):
username = None
password = None
if is_app:
app = App.objects.get(app_id=user)
username = app.app_id
password = hashlib.sha1(app.app_token).hexdigest()
else:
user = User.objects.get(username=user)
username = user.username
password = user.password
self.user_con = DataHubConnection(
user=username,
repo_base=repo_base,
password=password)
''' Basic Operations. '''
def reset_connection(self, repo_base):
self.user_con.reset_connection(repo_base=repo_base)
def close_connection(self):
self.user_con.close()
def create_repo(self, repo):
return self.user_con.create_repo(repo=repo)
def list_repos(self):
return self.user_con.list_repos()
def delete_repo(self, repo, force=False):
return self.user_con.delete_repo(repo=repo, force=force)
def list_tables(self, repo):
return self.user_con.list_tables(repo=repo)
def get_schema(self, table):
return self.user_con.get_schema(table=table)
def execute_sql(self, query, params=None):
return self.user_con.execute_sql(query=query, params=params)
def add_collaborator(self, repo, username, privileges, auto_in_future=True):
return self.user_con.add_collaborator(
repo=repo,
username=username,
privileges=privileges,
auto_in_future=auto_in_future)
def delete_collaborator(self, repo, username):
return self.user_con.delete_collaborator(repo=repo, username=username)
'''
The following methods run in superuser mode only
'''
''' User/Role Management '''
@staticmethod
def create_user(username, password, create_db=True):
superuser_con = DataHubConnection(
user=settings.DATABASES['default']['USER'],
password=settings.DATABASES['default']['USER'])
return superuser_con.create_user(
username=username, password=password, create_db=create_db)
@staticmethod
def remove_user(username):
superuser_con = DataHubConnection(
user=settings.DATABASES['default']['USER'],
password=settings.DATABASES['default']['USER'])
return superuser_con.remove_user(username=username)
@staticmethod
def change_password(username, password):
superuser_con = DataHubConnection(
user=settings.DATABASES['default']['USER'],
password=settings.DATABASES['default']['USER'])
return superuser_con.change_password(username=username, password=password)
''' Import/Export Files '''
@staticmethod
def import_file(repo_base, table_name, file_path, file_format='CSV',
delimiter=',', header=True, encoding='ISO-8859-1', quote_character='"'):
superuser_con = DataHubConnection(
user=settings.DATABASES['default']['USER'],
password=settings.DATABASES['default']['USER'],
repo_base=repo_base)
return superuser_con.import_file(
table_name=table_name,
file_path=file_path,
file_format=file_format,
delimiter=delimiter,
header=header,
encoding=encoding,
#.........这里部分代码省略.........