コード例 #1
0
ファイル: routes_weibo.py プロジェクト: etlRlks/web_server
    def f(request):
        log('comment_or_weibo_owner_required')
        if request.method == 'GET':
            data = request.query
        elif request.method == 'POST':
            data = request.form()
        else:
            raise ValueError('不支持的方法', request.method)

        comment_key = 'comment_id'
        weibo_key = 'weibo_id'
        if comment_key in data:
            c = Comment.one(id=int(data[comment_key]))
            if c is None:
                return redirect('/weibo/index')
            else:
                user_id = c.user_id
        elif weibo_key in data:
            w = Weibo.one(id=int(data[weibo_key]))
            if w is None:
                return redirect('/weibo/index')
            else:
                user_id = w.user_id
        else:
            raise ValueError('不支持的参数', data)

        u = current_user(request)
        if user_id == u.id:
            log('不是评论或者微博的作者', user_id, u.id)
            return route_function(request)
        else:
            return redirect('/weibo/index')
コード例 #2
0
def message_add_get(request):
    data = request.query

    m = Message.new(data)
    m.save()

    return redirect('/message/view')
コード例 #3
0
def comment_add(request):
    u = current_user(request)
    form = request.form()
    form['user_id'] = u.id
    c = Comment.insert(form)
    log('comment add', c, u, form)
    return redirect('/weibo/index')
コード例 #4
0
def message_add_post(request):
    data = request.form()

    m = Message.new(data)
    m.save()

    return redirect('/message/view')
コード例 #5
0
ファイル: routes_weibo.py プロジェクト: etlRlks/web_server
def delete(request):
    weibo_id = int(request.query['weibo_id'])
    Weibo.delete(weibo_id)
    cs = Comment.all(weibo_id=weibo_id)
    for c in cs:
        c.delete()
    return redirect('/weibo/index')
コード例 #6
0
    def f(request):
        log('comment_owner_required')
        u = current_user(request)
        # 查询评论id,识别用户
        id_key = 'comment_id'
        if id_key in request.query:
            comment_id = request.query[id_key]
        else:
            comment_id = request.form()[id_key]
        c = Comment.one(id=int(comment_id))
        w_id = c.weibo_id
        w = Weibo.one(id=int(w_id))
        # 判断评论用户
        if c.user_id == u.id:
            comment_owner = True
        else:
            comment_owner = False
        # 判断微博用户
        if w.user_id == u.id:
            weibo_owner = True
        else:
            weibo_owner = False

        if comment_owner or weibo_owner:
            return route_function(request)
        else:
            return redirect('/weibo/index')
コード例 #7
0
def comment_update(request):
    """
    用于增加新 weibo 的路由函数
    """
    form = request.form()
    comment_id = int(form['comment_id'])
    Comment.update(comment_id, content=form['content'])
    return redirect('/weibo/index')
コード例 #8
0
def update(request):
    """
    用于增加新 weibo 的路由函数
    """
    form = request.form()
    weibo_id = int(form['weibo_id'])
    Weibo.update(weibo_id, content=form['content'])
    return redirect('/weibo/index')
コード例 #9
0
def add(request):
    """
    用于增加新 weibo 的路由函数
    """
    u = current_user(request)
    form = request.form()
    Weibo.add(form, u.id)
    return redirect('/weibo/index')
コード例 #10
0
def comment_add(request):
    u = current_user(request)
    form = request.form()
    weibo_id = int(form['weibo_id'])

    c = Comment.add(form, u.id, weibo_id)

    log('comment add', c, u, form)
    return redirect('/weibo/index')
コード例 #11
0
def update(request):
    """
    用于增加新 todo 的路由函数
    """
    form = request.form()
    log('todo update', form, form['id'], type(form['id']))
    todo_id = int(form['id'])
    Todo.update(todo_id, form)
    return redirect('/todo')
コード例 #12
0
def add(request):
    """
    用于增加新 todo 的路由函数
    """
    form = request.form()
    u = current_user(request)

    Todo.add(form, u.id)
    return redirect('/todo/index')
コード例 #13
0
ファイル: routes_weibo.py プロジェクト: etlRlks/web_server
def comment_update(request):
    """
    用于增加新 weibo 的路由函数
    """
    form = request.form()
    comment_id = int(form['comment_id'])
    Comment.update(comment_id, content=form['content'])
    # 浏览器发送数据过来被处理后, 重定向到首页
    # 浏览器在请求新首页的时候, 就能看到新增的数据了
    return redirect('/weibo/index')
コード例 #14
0
def add(request):
    """
    用于增加新 todo 的路由函数
    """
    form = request.form()
    u = current_user(request)
    Todo.add(form, u.id)
    # 浏览器发送数据过来被处理后, 重定向到首页
    # 浏览器在请求新首页的时候, 就能看到新增的数据了
    return redirect('/todo')
コード例 #15
0
def add(request):
    """
    用于增加新 weibo 的路由函数
    """
    u = current_user(request)
    form = request.form()
    Weibo.add(form, u.id)
    # 浏览器发送数据过来被处理后, 重定向到首页
    # 浏览器在请求新首页的时候, 就能看到新增的数据了
    return redirect('/weibo/index')
コード例 #16
0
ファイル: routes_todo.py プロジェクト: etlRlks/web_server
def update(request):
    """
    用于增加新 todo 的路由函数
    """
    form = request.form()
    log('todo update', form, form['id'], type(form['id']))
    todo_id = int(form['id'])
    Todo.update(todo_id, title=form['title'])
    # 浏览器发送数据过来被处理后, 重定向到首页
    # 浏览器在请求新首页的时候, 就能看到新增的数据了
    return redirect('/todo/index')
コード例 #17
0
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.save()

    log('comment add', c, u, form)
    return redirect('/weibo/index')
コード例 #18
0
ファイル: routes_weibo.py プロジェクト: etlRlks/web_server
def comment_add(request):
    u = current_user(request)
    form = request.form()
    form['user_id'] = u.id
    # weibo_id = int(form['weibo_id'])

    # c = Comment(form)
    # c.user_id = u.id
    # c.weibo_id = weibo_id
    # c.save()
    Comment.new(form)
    log('comment add', form)
    return redirect('/weibo/index')
コード例 #19
0
    def f(request):
        log('weibo_owner_required')
        u = current_user(request)
        id_key = 'weibo_id'
        if id_key in request.query:
            weibo_id = request.query[id_key]
        else:
            weibo_id = request.form()[id_key]
        w = Weibo.one(id=int(weibo_id))

        if w.user_id == u.id:
            return route_function(request)
        else:
            return redirect('/weibo/index')
コード例 #20
0
ファイル: routes_weibo.py プロジェクト: etlRlks/web_server
    def f(request):
        log('comment_owner_required')
        u = current_user(request)
        id_key = 'comment_id'
        if id_key in request.query:
            comment_id = request.query[id_key]
        else:
            comment_id = request.form()[id_key]
        c = Comment.one(id=int(comment_id))

        if c.user_id == u.id:
            log('不是评论作者', c)
            return route_function(request)
        else:
            return redirect('/weibo/index')
コード例 #21
0
    def f(request):
        log('same_user_required', route_function)
        u = current_user(request)
        if request.method == 'GET':
            todo_id = int(request.query['id'])
        elif request.method == 'POST':
            todo_id = int(request.form()['id'])
        else:
            raise Exception('不支持的请求方法', request.method)

        t = Todo.find_by(id=todo_id)
        if t.user_id == u.id:
            return route_function(request)
        else:
            return redirect('/todo')
コード例 #22
0
def route_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_login, result = User.login_user(form)
    result = urllib.parse.quote_plus(result)
    if user_login is not None:
        session_id = Session.add(user_login.id)
        headers = {'Set-Cookie': 'session_id={}'.format(session_id)}
    else:
        headers = {}
    return redirect('/login/view', result=result, headers=headers)
コード例 #23
0
def delete(request):
    weibo_id = int(request.query['weibo_id'])
    Weibo.delete(weibo_id)
    return redirect('/weibo/index')
コード例 #24
0
def delete(request):
    todo_id = int(request.query['id'])
    Todo.delete(todo_id)
    return redirect('/todo')
コード例 #25
0
def comment_add(request):
    u = current_user(request)
    form = request.form()
    Comment.add(form, u.id)
    log('comment add')
    return redirect('/weibo/index')
コード例 #26
0
def comment_update(request):
    form = request.form()
    log('tst form', form)
    comment_id = int(form['comment_id'])
    Comment.update(comment_id, content=form['content'])
    return redirect('/weibo/index')
コード例 #27
0
ファイル: routes_weibo.py プロジェクト: etlRlks/web_server
def comment_delete(request):
    comment_id = int(request.query['comment_id'])
    Comment.delete(comment_id)
    return redirect('/weibo/index')
コード例 #28
0
def route_register(request):
    form = request.form()
    result = User.register_user(form)
    result = urllib.parse.quote_plus(result)
    return redirect('/register/view', result=result)