def create_database(): token = request.cookies.get('token') if User.query.get(cache.get_user_id(token)).roles: # 该用户的角色列表 for u in User.query.get(cache.get_user_id(token)).roles: for p in u.privileges: if p.name == 'create_db': print('有权限!') return 'OK' # print('name:',i.name) # db.create_all() return '创建数据库中的所有模型表成功'
def index(): # 获取用户登录的信息 token = request.cookies.get('token') user_id = cache.get_user_id(token) user = User.query.get(int(user_id)) return render_template('index.html', user=user)
def modify(): msg = None # print('request-method',request.method) token = request.cookies.get('token') user_id = cache.get_user_id(token) # 任务2::优化登录用户的相关信息存在redis中(缓存) user = User.query.get(int(user_id)) if request.method == 'POST': # 头像上传 # 获取上传的文件 # user_photo必须和前端请求中文件字段名保持一致 upload_file: FileStorage = request.files.get('user_photo') # 验证文件是否为图片 if not upload_file.content_type.startswith('image/'): msg = "只支持图片上传" else: # 保存图片 filename = uuid.uuid4().hex + os.path.splitext( upload_file.filename)[-1] filepath = os.path.join(settings.USER_DIR, filename) # 服务端保存上传的文件 upload_file.save(filepath) # 更新用户信息 # 保存在数据库的图片路径是相对static资源访问的路径 user.photo = 'user/' + filename db.session.commit() return render_template('user/info.html', user=user, msg=msg)
def modify(): token = request.cookies.get('token') user_id = cache.get_user_id(token) msg = '' # 任务1: 优化登陆用户的相关信息存在redis中(缓存) user = User.query.get(int(user_id)) if request.method == 'POST': # 头像上传 # 获取上传的文件 photo: FileStorage = request.files.get('user_photo') # print(photo.filename) # print(photo.content_length) # print(photo.content_type) # 验证文件是否是图片 if not photo.content_type.startswith('image/'): msg = '只支持图片上传!' else: # 保存图片 filename = uuid.uuid4().hex + os.path.splitext(photo.filename)[-1] filepath = os.path.join(settings.USER_DIR, filename) # 服务端保存上传的文件 photo.save(filepath) # 更新用户 # 保存在数据库的图片是相对static资源访问的路径 user.photo = 'user/' + filename db.session.commit() return render_template('user/info.html', user=user, msg=msg)
def modify(): token=request.cookies.get('token') user_id=cache.get_user_id(token) #登陆信息在redis中 user=User.query.get(int(user_id)) return render_template('user/info.html',user=user)
def process_request(*args, **kwargs): app.logger.info(request.path + '被访问了') # 记录被访问的路径 white_list = ['/user/login', '/user/register', '/user/name/verity', '/log'] token = request.cookies.get('token') if request.path.startswith('/s'): # 处理静态文件路径 return None if request.path in white_list: # 如果是请求白名单页面,则放行,否则会死循环 if token: user_id = cache.get_user_id(token) if user_id: # 如果user_id存在则放行,否则重定向到主页面 return redirect(url_for('index')) return None else: if not token: return redirect(url_for('userBlue.login')) user_id = cache.get_user_id(token) if user_id: # 如果user_id存在则放行,否则重定向到登录页面 return None return redirect(url_for('userBlue.login'))
def check_login(): # 判断request中是否包含token # 验证token是否有效 if request.path != '/user/login/': token = request.cookies.get('token') if not token: return redirect(url_for('userBlue.login')) user_id = cache.get_user_id(token) if not user_id: return redirect(url_for('userBlue.login'))
def upload_photo(): upload_file: FileStorage = request.files.get('photo') u = User.query.get(cache.get_user_id(request.cookies.get('token'))) filename = uuid.uuid4().hex + os.path.splitext(upload_file.filename)[-1] filepath = os.path.join(MEDIA_DIR, filename) upload_file.save(filepath) resp_path = '/s/media/' + filename u.photo = resp_path db.session.commit() return jsonify({'code': 200, 'msg': '上传成功', 'path': resp_path})
def check_login(): app.logger.info(request.path + '被访问了') if request.path not in ['/user/login', '/log']: # 判断request中是否包含token # 验证token是否有效 token = request.cookies.get('token') if not token: return redirect(url_for('userBlue.login')) else: user_id = cache.get_user_id(token) if not user_id: return redirect(url_for('userBlue.login'))
def check_login(): app.logger.info(request.path+'access ') # print(request.cookies.get('token')) # if request.path != '/user/login': if request.path not in ['/user/login','/log']: #验证token是否有效,token存储与redis中 token=request.cookies.get('token') if not token: return redirect(url_for('userBlue.login')) else: user_id=cache.get_user_id(token) if not user_id: return redirect(url_for('userBlue.login'))
def upload_photo(): upload_file: FileStorage=request.files.get('photo') filename=uuid.uuid4().hex+os.path.splitext(upload_file.filename)[-1] filepath=os.path.join(settings.USER_DIR,filename) upload_file.save(filepath) user=User.query.get(cache.get_user_id(request.cookies.get('token'))) user.photo='user/'+filename db.session.commit() return jsonify({ 'msg':'upload success', # 'path':'user/gyy6.jpg' 'path':'user/'+filename })
def modify(): token = request.cookies.get('token') user_id = cache.get_user_id(token) # 任务2: 优化登录用户的相关信息存在redis中(缓存) user = User.query.get(int(user_id)) if request.method == 'POST': nick_name = request.form.get('nick_name') password = request.form.get('password') # 修改用户信息 user.nick_name = nick_name user.auth_key = password # db.session.commit() return render_template('user/info.html', user=user)
def upload_photo(): upload_file: FileStorage = request.files.get('photo') filename = uuid.uuid4().hex + os.path.splitext(upload_file.filename)[-1] filepath = os.path.join(settings.USER_DIR, filename) upload_file.save(filepath) user = User.query.get(cache.get_user_id(request.cookies.get('token'))) # 任务1: 删除之前的用户头像 user.photo = 'user/' + filename db.session.commit() # ? 图片如何压缩- PIL(pip install pillow) return jsonify({'msg': '上传成功', 'path': 'user/' + filename})
def upload_photo(): upload_file: FileStorage = request.files.get('photo') filename = uuid.uuid4().hex + os.path.splitext(upload_file.filename)[-1] filepath = os.path.join(settings.USER_DIR, filename) upload_file.save(filepath) # 获取文件 user = User.query.get(cache.get_user_id(request.cookies.get('token'))) # 任务1:删除之前的用户头像 if user.photo: yuan = os.path.join(settings.STATIC_DIR, user.photo) os.remove(yuan) print('------------删除成功-------------') user.photo = 'user/' + filename db.session.commit() return jsonify({'msg': '上传成功', 'path': 'user/' + filename})
def upload_photo(): token = request.cookies.get('token') user = User.query.get(int(cache.get_user_id(token))) upload_file:FileStorage = request.files.get('photo') filename = uuid.uuid4().hex + os.path.splitext(upload_file.filename)[-1] filepath = os.path.join(settings.USER_DIR, filename) upload_file.save(filepath) # 任务2 删除用户的旧图片资源 try: os.remove(os.path.join(settings.STATIC_DIR, user.photo)) except: print('文件丢失') user.photo = 'user/' + filename db.session.commit() return jsonify({ 'msg': '上传成功', 'path': '/static/user/' + filename })
def index(): user_id = cache.get_user_id(request.cookies.get('token')) u = User.query.get(user_id) return render_template("index.html", user=u)