Beispiel #1
0
def game_popular_users(gid):
    """获取游戏热门用户 (GET)

    :uri: /games/<string:gid>/popularusers
    :param page: 页码
    :param nbr: 每页数量
    :returns: {'users': list, 'end_page': bool}
    """
    params = request.values
    page = int(params.get('page', 1))
    pagesize = int(params.get('nbr', 10))
    uids = Game.popular_user_ids(gid, page, pagesize)
    users = [u.format() for u in User.get_list(uids)]
    return {'users': users, 'end_page': len(uids) != pagesize}
Beispiel #2
0
def recommend_users():
    """获取推荐关注 (GET&LOGIN)

    :uri: /recommend/users
    :returns: {'users': list}
    """
    user = request.authed_user
    uids = []
    gids = UserSubGame.sub_game_ids(str(user._id))
    for gid in gids:
        uids.extend(Game.popular_user_ids(gid))
    if not uids:
        uids = User.user_recommend_attention()
    uids = list(set(uids))
    if str(user._id) in uids:
        uids.remove(str(user._id))
    if len(uids) > const.RECOMMEND_ATTENTION:
        uids = random.sample(uids, const.RECOMMEND_ATTENTION)
    users = [u.format() for u in User.get_list(uids)]
    return {'users': users}