def join_team(): """ Joining team view. :return: HTTP Response """ team = Team.get(team_name=request.form['team_name']) if not team: team = Team(team_name=request.form['team_name']) team.save() else: team = team[0] current_user.set_team(team.team_id) team.increase_rank(current_user.rank) return redirect(request.referrer)
def delete_tag(request): # FIXME: ugly if request.method == "POST": user = request.user if not user: return {'r': 0, 'msg': '未登录,请先登录'} tag_name = request.get_form_var('tag_name', '').decode('utf-8') tag_type = request.get_form_var('tag_type', '') tag_target_id = request.get_form_var('tag_target_id', '') if not tag_name: return {'r': 0, 'msg': 'tag不能为空'} try: tag_type, tag_target_id = int(tag_type), int(tag_target_id) except: return {'r': 0, 'msg': '错误的数据类型'} if tag_type == TAG_TYPE_PROJECT_ISSUE: target = CodeDoubanProject.get(tag_target_id) elif tag_type == TAG_TYPE_TEAM_ISSUE: target = Team.get(tag_target_id) else: return {'r': 0, 'msg': '错误的数据类型'} if not target.is_admin(user.name): return {'r': 0, 'msg': '没有操作权限'} tname = TagName.get_by_name_and_target_id(tag_name, tag_type, target.id) if not tname: return {'r': 0, 'msg': 'tag不存在'} tags = Tag.gets_by_tag_id(tname.id) for tag in tags: tag.delete() tname.delete() return {'r': 1, 'msg': '删除成功'}
def target(self): from models.team import Team return Team.get(self.team_id)