def edit_userprofile(): if current_user is not None and current_user.is_privileged(UserType.registered): username = request.args.get("username") if not username: abort(404) elif current_user.username.lower() != username.lower(): abort(403) else: return render_template('edit_userprofile.html', username=current_user.username, user=current_user, genderName = GenderType.getName(current_user.gender), typeName=UserType.getName(current_user.type), birthStr = current_user.getBirthStr()) else: abort(403)
def user(): if current_user is not None and current_user.is_privileged(UserType.staff): page = request.args.get("page", 1) if page < 1: page = 1 paginate = Users.query.order_by(Users.uid).paginate(int(page), config.PAGE_ITEMS, False) users = [] for user in paginate.items: user.gender = GenderType.getName(user.gender) user.type = UserType.getName(user.type) users.append(user) return render_template("user.html", username=current_user.username, index=4, pagination=paginate) else: abort(403)
def search_user(): if current_user is not None and current_user.is_privileged(UserType.staff): # 由于使用站内搜索功能时结果集一般很少,为简单起见不再支持分页 name = request.args.get("username") if name == "": return render_template("error.html", message="请输入查询的用户名") try: pattern = "%" + name + "%" # 支持模糊查询 result = ( Users.query.filter( or_(Users.username.like(pattern), Users.phone.like(pattern), Users.email.like(pattern)) ) .order_by(Users.uid) .all() ) users = [] for user in result: user.gender = GenderType.getName(user.gender) user.type = UserType.getName(user.type) users.append(user) return render_template("search_user.html", username=current_user.username, users=result, index=4) except Exception, e: # app.logger.error(e) return render_template("error.html", message="查询失败")