Ejemplo n.º 1
0
def index():
    u = current_user()
    if u is None:
        return redirect(url_for('login.login'))
    else:
        send = Message.all(sender_id=u.id)
        received = Message.all(receiver_id=u.id)
        return render_template(
            'message/index.html',
            user=u,
            send=send,
            received=received,
        )
Ejemplo n.º 2
0
def route_message(request):
    """
    主页的处理函数, 返回主页的响应
    """
    log('from route_message -->本次请求的 method', request.method)
    if request.method == 'POST':
        form = request.form()
        msg = Message.new(form)
        # 增加一个存储功能 from kiwi
        # msg 和 message_list是2个不同的东西
        # msg是Message类的一个实例,msg.save()会将数据存入txt中
        # message_list是临时定义的空列表,其中元素是msg实例,每次启动会清零
        # log('msg: type  ', type(msg))
        # log('msg: str   ', str(msg))
        # log('msg: ', msg)
        log('post', form)
        # 应该在这里保存 message_list
    # 列表推倒
    # 注意str(m)
    msgs = '<br>'.join([str(m) for m in Message.all()])
    # 上面的列表推倒相当于下面的功能
    # messages = []
    # for m in message_list:
    #     messages.append(str(m))
    # msgs = '<br>'.join(messages)
    body = template('html_basic.html', messages=msgs)
    return http_response(body)
Ejemplo n.º 3
0
def index():
    """得到当前登陆用户收到的信息"""
    uid = session['user_id']
    ms = Message.all(receiver_id=uid)
    jsons = [m.json() for m in ms]
    for j in jsons:
        u = User.one(id=j['user_id'])
        j['avatar'] = u.avatar
    return jsonify(jsons)
Ejemplo n.º 4
0
def route_message(request):
    if request.method == 'POST':
        form = request.form()
        msg = Message(form)
        Message.add(msg)
    header = 'HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n'
    body = template('msg.html')
    msgs = '<br>'.join([str(m) for m in Message.all()])
    body = body.replace('{{messages}}', msgs)
    r = header + '\r\n' + body
    return r.encode(encoding='utf-8')
Ejemplo n.º 5
0
def message():
    """
    允许GET是因为在地址栏输入地址转到messages页面需要
    POST是因为在messages页面内容点击"提交"按钮需要
    主要的bug是转到message页面和message页面都都是同一个路由函数
    :return: 返回message页面,并显示所有用户信息
    """
    form = request.form
    msg = Message.new(form)
    # html元素失效
    # msgs = '<br>'.join([str(m) for m in Message.all()])
    body = render_template('html_basic.html', messages=Message.all())
    return make_response(body)
Ejemplo n.º 6
0
def message():
    user = current_user()
    messages = Message.all(receiver_id=user.id)
    read = [m for m in messages if m.read == 1]
    unread = [m for m in messages if m.read == 0]

    for m in messages:
        m.update(m.id, read=1)
    return render_template(
        "user/message.html",
        login_user=user,
        unread=unread,
        read=read,
    )
Ejemplo n.º 7
0
def reply_list():
    u = current_user()
    ms = Message.all(user_id=u.id)
    data = list()
    for m in ms:
        m: Message
        data.append(
            dict(
                id=m.id,
                content=m.content,
                user_id=m.user_id,
                read=m.read,
                create_time=m.created_time,
            ))
    return response(data=data, status=status.HTTP_200_OK)
Ejemplo n.º 8
0
def route_message_add(request):
    log('本次请求的 method', request.method)
    form = request.form()
    m = Message.new(form)
    log('post', form)
    # 应该在这里保存 message_list
    m.save()

    header = 'HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n'
    body = route_template('messages.html')
    ms = '<br>'.join([str(m) for m in Message.all()])

    body = body.replace('{{messages}}', ms)
    r = header + '\r\n' + body
    return r.encode()
Ejemplo n.º 9
0
def route_message_add(request):
    """
    处理增加信息的路由函数
    """
    form = request.form()
    m = Message.new(form)
    m.save()

    header = 'HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n'
    body = template('html_basic.html')
    ms = '<br>'.join([str(m) for m in Message.all()])

    body = body.replace('{{messages}}', ms)
    r = header + '\r\n' + body

    return r.encode(encoding='utf-8')
Ejemplo n.º 10
0
def route_message(request):
    """
    message页面的处理函数, 返回对应的响应
    """
    form = request.query

    if len(form) > 0:
        m = Message.new(form)
        log('get', form)
        m.save()
    header = 'HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n'
    body = template('html_basic.html')
    ms = '<br>'.join([str(m) for m in Message.all()])
    body = body.replace('{{messages}}', ms)
    r = header + '\r\n' + body

    return r.encode(encoding='utf-8')
Ejemplo n.º 11
0
def route_message(request):
    """
    主页的处理函数, 返回主页的响应
    """
    log('本次请求的 method', request.method)
    if request.method == 'POST':
        data = request.form()
    else:
        data = request.query

    if 'message' in data:
        m = Message.new(data)
        m.save()
        User.all()

    header = 'HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n'
    body = template('html_basic.html')
    ms = '<br>'.join([str(m) for m in Message.all()])
    body = body.replace('{{messages}}', ms)
    r = header + '\r\n' + body
    return r.encode()
Ejemplo n.º 12
0
def route_message(request):
    """
    主页的处理函数, 返回主页的响应
    """
    log('本次请求的 method', request.method)
    u = current_user(request)
    log('username', u.username)
    if u.username == '【游客】':
        return error()
    else:
        form = request.query
        if len(form) > 0:
            m = Message.new(form)
            log('post', form)
            m.save()

        header = 'HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n'
        body = route_template('messages.html')
        ms = '<br>'.join([str(m) for m in Message.all()])
        body = body.replace('{{messages}}', ms)
        r = header + '\r\n' + body
        return r.encode()
Ejemplo n.º 13
0
def route_message_add(request):
    """
    主页的处理函数, 返回主页的响应
    POST /messages HTTP/1.1
    Host: localhost:3000
    Content-Type: application/x-www-form-urlencoded

    message=123&author=gua
    """
    # log('本次请求的 method', request.method)
    form = request.form()
    m = Message.new(form)
    # 应该在这里保存 message_list
    m.save()

    header = 'HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n'
    body = template('messages.html')
    ms = '<br>'.join([str(m) for m in Message.all()])

    body = body.replace('{{messages}}', ms)
    r = header + '\r\n' + body
    return r.encode()
Ejemplo n.º 14
0
def route_message(request):
    """
    主页的处理函数, 返回主页的响应
    这个页面只对的路过的用户开放
    GET /messages?message=123&author=gua HTTP/1.1
    Host: localhost:3000
    """
    username = current_user(request)
    if username == '【游客】':
        return error(request)
    else:
        form = request.query
        if len(form) > 0:
            m = Message.new(form)
            m.save()

        header = 'HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n'
        body = template('messages.html')
        ms = '<br>'.join([str(m) for m in Message.all()])
        body = body.replace('{{messages}}', ms)
        r = header + '\r\n' + body
        return r.encode()
Ejemplo n.º 15
0
def route_message(request):
    username = current_user(request)
    # if username == '【游客】':
    if username == User.guest():
        return error(request)
    else:
        log('本次请求的 method', request.method)
        if request.method == 'POST':
            data = request.form()
        else:
            data = request.query

        if len(data) > 0:
            log('post', data)
            m = Message.new(data)
            m.save()

        header = 'HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n'
        body = template('messages.html')
        ms = '<br>'.join([str(m) for m in Message.all()])
        body = body.replace('{{messages}}', ms)
        r = header + '\r\n' + body
        return r.encode()
Ejemplo n.º 16
0
def route_message(request):
    """
    主页的处理函数, 返回主页的响应
    GET /messages?message=123&author=gua HTTP/1.1
    Host: localhost:3000
    """
    log('本次请求的 method', request.method)
    u = current_user(request)
    log('本次请求的 username', u.username)
    if u.id == -1:
        return error(request)
    else:
        form = request.query
        if len(form) > 0:
            m = Message.new(form)
            log('get', form)
            m.save()

        header = 'HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n'
        body = template('messages.html')
        ms = '<br>'.join([str(m) for m in Message.all()])
        body = body.replace('{{messages}}', ms)
        r = header + '\r\n' + body
        return r.encode()
Ejemplo n.º 17
0
def message_view(request):
    ms = Message.all()
    return render_response("messages.html", messages=ms)
Ejemplo n.º 18
0
def message_view(request):
    ms = Message.all()
    return html_response('messages.html', messages=ms)