def login(request): """ 登录页面的路由函数 """ log('login, headers', request.headers) log('login, cookies', request.cookies) user_current = current_user(request) log('current user', user_current) form = request.form() user, result = User.login(form) if user.is_guest(): return redirect('/user/login/view?result={}'.format(result)) else: session_id = Session.add(user_id=user.id) return redirect('/user/login/view?result={}'.format(result), session_id)
def comment_delete(request): # 删除评论 # 判断当前用户是否有权限 comment_id = int(request.query['id']) # 只有评论用户和评论所属的微博的用户都能删除评论 Comment.delete(comment_id) return redirect('/weibo/index')
def delete(request): weibo_id = int(request.query['id']) Weibo.delete(weibo_id) # 注意删除所有微博对应评论 cs = Comment.all(weibo_id=weibo_id) for c in cs: c.delete(c.id) return redirect('/weibo/index')
def f(request): log('weibo_owner_required') u = current_user(request) if 'id' in request.query: weibo_id = request.query['id'] else: weibo_id = request.form()['id'] w = Weibo.one(id=int(weibo_id)) if w.user_id == u.id: return route_function(request) else: if 'id' in request.query: return redirect('/weibo/index?id={}'.format( request.query['id'])) else: return redirect('/weibo/index?id={}')
def update(request): """ 用于增加新 todo 的路由函数 """ form = request.form() Todo.update(form) # 浏览器发送数据过来被处理后, 重定向到首页 # 浏览器在请求新首页的时候, 就能看到新增的数据了 return redirect('/todo/index')
def update(request): """ 用于增加新 weibo 的路由函数 """ form = request.form() Weibo.update(**form) # 浏览器发送数据过来被处理后, 重定向到首页 # 浏览器在请求新首页的时候, 就能看到新增的数据了 return redirect('/weibo/index')
def add(request): """ 用于增加新 todo 的路由函数 """ u = current_user(request) form = request.form() Todo.add(form, u.id) # 浏览器发送数据过来被处理后, 重定向到首页 # 浏览器在请求新首页的时候, 就能看到新增的数据了 return redirect('/todo/index')
def register(request): """ 注册页面的路由函数 """ form = request.form() u, result = User.register(form) log('register post', result) return redirect('/user/register/view?result={}'.format(quote(result)))
def comment_add(request): u = current_user(request) form = request.form() weibo_id = int(form['weibo_id']) c = Comment(form) c.user_id = u.id c.weibo_id = weibo_id c.new(c) log('comment add', c, u, form) return redirect('/weibo/index')
def f(request): log('same_user_required') u = current_user(request) if 'id' in request.query: todo_id = request.query['id'] else: todo_id = request.form()['id'] t = Todo.find_by(id=int(todo_id)) if t.user_id == u.id: return route_function(request) else: return redirect('/todo/index')
def comment_update(request): form = request.form() content = form['content'] comment_id = int(form['id']) c = Comment.one(id=comment_id) # 直接更新评论 c.update(id=c.id, content=content) # c.content = content # c.save() # 重定向到用户的主页 return redirect('/weibo/index')
def f(request): log('comment_owner_required') u = current_user(request) if 'id' in request.query: comment_id = request.query['id'] else: comment_id = request.form()['id'] c = Comment.one(id=int(comment_id)) if c.user_id == u.id: return route_function(request) else: return redirect('/weibo/index')
def comment_delete(request): u = current_user(request) nuser_id = int(u.id) # log('gaicuoti:', user_id) comment_id = int(request.query['id']) comments = Comment.one(id=comment_id) weibo_id = comments.weibo_id user_id = comments.user_id log('gaicuoti:', weibo_id, user_id) if nuser_id == user_id or nuser_id == weibo_id: Comment.delete(comment_id) return redirect('/weibo/index')
def delete(request): todo_id = int(request.query['id']) Todo.delete(todo_id) return redirect('/todo/index')
def comment_add(request): u = current_user(request) form = request.form() Weibo.comment_add(form, u.id) return redirect('/weibo/index')