コード例 #1
0
ファイル: project_route.py プロジェクト: zjn0224/mo
def count_projects():
    user_ID = request.args.get('user_ID')
    types = ['app', 'module', 'dataset']
    # user_ID = get_jwt_identity()
    counts = []
    for type in types:
        projects = project_service.list_projects(type=type, user_ID=user_ID)
        counts.append(projects.count)
    return jsonify({"response": counts}), 200
コード例 #2
0
ファイル: project_route.py プロジェクト: StoneXue/mo
def list_projects_by_query():
    group = request.args.get('group')
    page_no = int(request.args.get('page_no', 1))
    page_size = int(request.args.get('page_size', 5))
    search_query = request.args.get('query', None)
    privacy = request.args.get('privacy', None)
    default_max_score = float(request.args.get('max_score', 0.4))
    type = request.args.get('type', 'project')
    tags = request.args.get('tags', None)
    if tags:
        tags = tags.split(',')

    if group == 'my':
        user_ID = get_jwt_identity()
    else:
        user_ID = None
        privacy = 'public'
    try:
        projects = project_service.list_projects(
            search_query=search_query,
            privacy=privacy,
            type=type,
            page_no=page_no,
            page_size=page_size,
            default_max_score=default_max_score,
            user_ID=user_ID,
            tags=tags)
    except Warning as e:
        return jsonify({
            "response": [],
            "message": e.args[0]["hint_message"]
        }), 200
    except Error as e:
        return jsonify({"message": e.args[0]["hint_message"]}), 404
    else:
        for project in projects.objects:
            project.user_ID = project.user.user_ID
            # if project.user.avatar:
            #     project.user_avatar = project.user.avatar
        project_list = json_utility.me_obj_list_to_json_list(projects.objects)
        return jsonify(
            {"response": {
                'projects': project_list,
                'count': projects.count
            }}), 200