评论列表显示及排序,个人中心显示

本文介绍了一个简单的个人中心页面实现方案,包括页面布局、视图函数定义、前后端数据交互等核心内容。通过具体的代码示例展示了如何展示用户的问答、评论和个人信息。

显示所有评论
{% for foo in ques.comments %}

 <h4>评论:({{ ques.comments|length }}) </h4>
            <ul class="list-group">
                {% for foo in ques.comments %}
                <li class="list-group-item">
                    <span class="glyphicon glyphicon-heart-empty" aria-hidden="true"></span>
                    <a href="{{url_for('usercenter',user_id = foo.author.id) }}">{{foo.author.username}}</a>
                    <span class="badge">{{foo.creat_time}}</span>
                    <p> {{foo.detail }}</p>
                </li>
                {% endfor %}
            </ul>

所有评论排序

uquestion = db.relationship('Question', backref=db.backref('comments', order_by=creat_time.desc))

 question = db.relationship('Question',backref = db.backref('comments',order_by=creat_time.desc))
   

显示评论条数
{{ ques.comments|length }}

            <h4>评论:({{ ques.comments|length }}) </h4>

完成个人中心

1.个人中心的页面布局(html文件及相应的样式文件)

2.定义视图函数def usercenter(user_id):

3.向前端页面传递参数

4.页面显示相应数据

     发布的全部问答

    发布的全部评论

    个人信息

5.评论列表显示及排序,个人中心显示

@app.route('/usercenter/<user_id>')
@loginFrist
def usercenter(user_id):
    user = User.query.filter(User.id == user_id).first()
    context = {
        'username':user.username,
        'questions':user.questions,
        'comments':user.comments
    }
    return render_template('usercenter.html',**context)

 

{% extends 'base.html' %}
{% block title %} 个人中心  {% endblock %}

{% block main %}
    <div class="page-header">
        <h3><span class="glyphicon glypgicon-user" aria-hidden="true"></span>
        {{username }} <br> <small> <span class="badge"></span></small></h3>
        <ul class="list-group">
            {% for foo in questions %}
            <li class="list-group-item">
                <span class="glyphicon glyphicon-heart-empty" aria-hidden="true"></span>
                <a href="#"> {{foo.author.username }}</a>
                <span class="badge">{{foo.creat_time</span>
                <p > {{foo.detail}}</p>
            </li>
            {% endfor %}
        </ul>

    </div>
    <div class="page-header">
        <h3><span class="glyphicon glypgicon-user" aria-hidden="true"></span>
        {{username }} <br> <small> <span class="badge"></span></small></h3>
        <ul class="list-group">
            {% for foo in ques.comments %}
            <li class="list-group-item">
                <span class="glyphicon glyphicon-heart-empty" aria-hidden="true"></span>
                <a href="#">{{foo.author.username}}</a>
                <span class="badge">{{foo.creat_time}}</span>
                <p> {{foo.detail }}</p>
            </li>
            {% endfor %}
        </ul>


    </div>
    <div class="page-header">
        <h3><span class="glyphicon glyphicon-user" aria-hidden="true"></span>
            {{user}}<br><small>个人信息 <span class="badge"></span></small></h3>
        <ul class="list-group">
            <li class="list-group-item">用户:{{username}}</li>
            <li class="list-group-item">编号:</li>
            <li class="list-group-item">昵称:</li>
        </ul>

    </div>

{% endblock %}

 

转载于:https://www.cnblogs.com/qianshu/p/8027231.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值