本文整理汇总了Python中pytas.http.TASClient.projects_for_user方法的典型用法代码示例。如果您正苦于以下问题:Python TASClient.projects_for_user方法的具体用法?Python TASClient.projects_for_user怎么用?Python TASClient.projects_for_user使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pytas.http.TASClient
的用法示例。
在下文中一共展示了TASClient.projects_for_user方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: user_projects
# 需要导入模块: from pytas.http import TASClient [as 别名]
# 或者: from pytas.http.TASClient import projects_for_user [as 别名]
def user_projects( request, username ):
logger.info( 'User projects requested by admin: %s for user %s', request.user, username )
resp = {
'status': 'error',
'msg': '',
'result': []
}
if username:
tas = TASClient()
try:
userData = tas.get_user(username=username)
try:
userProjects = tas.projects_for_user( username=username )
chameleonProjects = tas.projects_for_group('Chameleon');
if (chameleonProjects and userProjects):
for project in userProjects:
if project in chameleonProjects:
resp['status'] = 'success'
resp['result'].append(project)
logger.info( 'Total chameleon projects for user %s: %s', username, len( resp ) )
except Exception as e:
logger.debug('Error loading projects for user: %s', username)
resp['msg'] = 'Error loading projects for user: %s' %username
except Exception as e:
logger.debug('User not found with username: %s', username)
resp['msg'] = 'User not found.'
return HttpResponse(json.dumps(resp), content_type="application/json")
示例2: get_projects_json
# 需要导入模块: from pytas.http import TASClient [as 别名]
# 或者: from pytas.http.TASClient import projects_for_user [as 别名]
def get_projects_json( request, username=None ):
logger.info( 'Projects requested.')
resp = []
try:
tas = TASClient()
chameleonProjects = tas.projects_for_group('Chameleon')
if username is not None:
userProjects = tas.projects_for_user( username=username )
if (chameleonProjects and userProjects):
for project in userProjects:
if project in chameleonProjects:
resp.append(project)
logger.info( 'Total chameleon projects for user %s: %s', username, len( resp ) )
else:
logger.info( 'Total chameleon projects: %s', username, len( chameleonProjects ) )
resp = chameleonProjects
except Exception as e:
traceback.print_exc()
raise Exception('Error loading projects.')
return HttpResponse(json.dumps(resp), content_type="application/json")
示例3: user_projects
# 需要导入模块: from pytas.http import TASClient [as 别名]
# 或者: from pytas.http.TASClient import projects_for_user [as 别名]
def user_projects( request, username ):
logger.info( 'User projects requested by admin: %s for user %s', request.user, username )
resp = {
'status': 'error',
'msg': '',
'result': []
}
if username:
tas = TASClient()
try:
userData = tas.get_user(username=username)
try:
userProjects = tas.projects_for_user( username=username )
#logger.debug(userProjects)
temp = {}
# run through and make sure all the allocations are associated with one project
for p in userProjects:
if p['source'] == 'Chameleon':
if p['chargeCode'] not in temp:
logger.debug('Project ' + p['chargeCode'] + ' is not in the temp yet, adding')
temp[p['chargeCode']] = p
else:
logger.debug('Project ' + p['chargeCode'] + ' is in temp...appending allocations')
tempProj = temp[p['chargeCode']]
for a in p['allocations']:
if a['resource'] == 'Chameleon':
tempProj['allocations'].extend(a)
temp[p['chargeCode']] = tempProj
for code, proj in temp.items():
resp['status'] = 'success'
resp['result'].append(proj)
logger.info('Total chameleon projects for user %s: %s', username, len(resp))
except Exception as e:
logger.debug('Error loading projects for user: %s with error %s', username, e)
resp['msg'] = 'Error loading projects for user: %s' %username
except Exception as e:
logger.debug('User not found with username: %s', username)
resp['msg'] = 'User not found.'
return HttpResponse(json.dumps(resp), content_type="application/json")
示例4: get_user_info
# 需要导入模块: from pytas.http import TASClient [as 别名]
# 或者: from pytas.http.TASClient import projects_for_user [as 别名]
def get_user_info(request, username):
#username = request.GET.get('username')
resp = {}
resp['result'] = None
resp['status'] = 'error'
if username is None:
resp['message'] = 'Username is required'
try:
tas = TASClient()
resp['status'] = 'success'
users = tas.get_user(username=username)
projects = tas.projects_for_user(username)
resp['result'] = users
resp['result']['projects'] = projects
except Exception as e:
traceback.print_exc()
raise Exception('Error fetching user.')
return HttpResponse(json.dumps(resp), content_type="application/json")