def edit(request): weibo_id = int(request.query.get('id', -1)) w = Weibo.find(weibo_id) user = current_user(request) # 生成一个 edit 页面 body = template('weibo_edit.html', weibo=w, user=user) return http_response(body)
def update(request): form = request.form() content = form.get('content', '') weibo_id = int(form.get('id', -1)) w = Weibo.find(weibo_id) w.content = content w.save() # 重定向到用户的主页 return redirect('/weibo/index')
def delete(request): uid = current_user(request) user = User.find(uid) # 删除微博 weibo_id = request.query.get('id', None) weibo_id = int(weibo_id) w = Weibo.find(weibo_id) w.delete() return redirect('/weibo/index?user_id={}'.format(user.id))
def comment_add(request): u = current_user(request) # 创建微博 form = request.form() c = Comment.new(form) c.user_id = u.id c.save() log('comment add', c, u, form) weibo = Weibo.find(id=int(form['weibo_id'])) return redirect('/weibo/index?user_id={}'.format(weibo.user_id))
def edit(request): weibo_id = request.query.get('id', -1) if weibo_id is None: weibo_id = current_user(request) weibo_id = int(weibo_id) w = Weibo.find(weibo_id) if w is None: return error(request) # 生成一个 edit 页面 body = template('weibo_edit.html', weibo=w) return http_response(body)
def comment_delete(request): u = current_user(request) # 删除微博 comment_id = int(request.query.get('id', None)) c = Comment.find(comment_id) log('comment_delete 1', c.user_id) w = Weibo.find(c.weibo_id) log('comment_delete 2', w.user_id) if c.user_id == u.id or w.user_id == u.id: Comment.delete(comment_id) return redirect('/weibo/index')
def delete(): weibo_id = int(request.args.get('id')) item = Weibo.find(weibo_id) if same_user_required(item): t = Weibo.delete(weibo_id) comments = Comment.find_all(weibo_id=str(weibo_id)) for c in comments: Comment.delete(c.id) return jsonify(t.json()) else: pass
def update(request): """ 用于更新 weibo 的路由函数 """ if request.method == 'POST': # 'title=aaa' ==> {'title': 'aaa'} form = request.form() weibo_id = int(request.query.get('id', -1)) w = Weibo.find(weibo_id) w.content = form.get('content', w.content) w.save() return redirect('/weibo')
def delete(request): uname = current_user(request) u = User.find_by(username=uname) if u is None: return redirect('/login') weibo_id = int(request.query.get('id', -1)) w = Weibo.find(weibo_id) if w.user_id != u.id: return redirect('/login') if w is not None: w.delete() return redirect('/weibo')
def f(request): log('same user required', request) u = current_user(request) if request.method == 'GET': webbo_id = int(request.query.get('id')) else: webbo_id = int(request.form().get('id')) w = Weibo.find(webbo_id) if w.is_owner(u.id): return route_function(request) else: return redirect('/login')
def edit(request): u = current_user(request) weibo_id = int(request.query.get('id', -1)) w = Weibo.find(weibo_id) # 若当前用户为微博作者,允许编辑 if w.user_id == u.id: # 生成一个 edit 页面 body = template('weibo_edit.html', weibo_id=w.id, weibo_content=w.content) return http_response(body) # 重定向到用户微博的主页 else: return redirect('/weibo/index')
def test_tweet(): # 用户 1 发微博 form = {'content': 'hello tweet'} t = Weibo(form, 1) t.save() # 用户 2 评论微博 form = {'content': '楼主说得对'} c = Comment(form, 2) c.tweet_id = 1 c.save() # 取出微博 1 的所有评论 t = Weibo.find(1) print('comments, ', t.comments()) pass
def update(request): u = current_user(request) form = request.form() content = form.get('content', '') weibo_id = int(form.get('id', -1)) w = Weibo.find(weibo_id) # 若当前用户为微博作者,允许更新 if w.user_id == u.id: w.content = content w.save() # 重定向到用户微博的主页 return redirect('/weibo/index') # 否则返回 404 错误 else: return error(request)
def update(request): uid = current_user(request) user = User.find_by(id=uid) form = request.form() content = form.get('content', '') weibo_id = int(form.get('id', -1)) if weibo_id == -1: weibo_id = int(request.query.get('id', -1)) w = Weibo.find(weibo_id) if user.id != w.user_id: return error(request) w.content = content w.save() # 重定向到用户的主页 return redirect('/weibo/index?user_id={}'.format(user.id))
def edit(request): """ weibo edit 的路由函数 """ uname = current_user(request) u = User.find_by(username=uname) if u is None: return redirect('/login') # 得到当前编辑的 weibo 的 id weibo_id = int(request.query.get('id', -1)) w = Weibo.find(weibo_id) if w is None: return error(request) # 权限 if w.user_id != u.id: return redirect('/login') body = template('weibo_edit.html', weibo=w) return http_response(body)
def f(request): log('comment user required', request) u = current_user(request) if request.method == 'GET': comment_id = int(request.query.get('id')) else: comment_id = int(request.form().get('id')) c = Comment.find(comment_id) if route_function == comment_delete: if c.is_owner(u.id) or Weibo.find(c.weibo_id).user_id == u.id: return route_function(request) else: return redirect('/login') else: if c.is_owner(u.id): return route_function(request) else: return redirect('/login')
def edit(request): weibo_id = int(request.query.get('id', -1)) w = Weibo.find(weibo_id) # 生成一个 edit 页面 body = template('weibo_edit.html', weibo_id=w.id, weibo_content=w.content) return http_response(body)
def delete(): id = int(request.args.get('id')) w = Weibo.find(id) if current_user().id == w.user_id: w.delete() return redirect(url_for('.index'))
def comment_all(request): weibo_id = int(request.query.get('id')) w = Weibo.find(weibo_id) comments = w.comments() cs = [c.json() for c in comments] return json_response(cs)
def edit(request): weibo_id = int(request.query.get('id', -1)) w = Weibo.find(weibo_id) # 替换模板文件中的标记字符串 body = template('weibo_edit.html', weibo=w) return http_response(body)