评论列表显示及排序,个人中心显示
1.显示所有评论
{% for foo in ques.comments %}
{% for foo in ques.comments %} <li class="list-group-item" style="background-color:lightcyan;height:250px;width:600px;"> <span class="glyphicon glyphicon-leaf" aria-hidden="true"></span> <a href="{{ url_for('usercenter',user_id=foo.author_id) }}">作者★{{ ques.author.username }}</a> <br> <a href="#">标题:{{ ques.title }}</a> <br> <p style="color:black">详情:{{ ques.detail }}</p> <p>评论:{{ foo.detail }}</p><br><br><br> <span class="badge" style="margin-left: 60%">评论时间:{{ foo.create_time }}</span> </li> {% endfor %}
2.所有评论排序
uquestion = db.relationship('Question', backref=db.backref('comments', order_by=creat_time.desc))
question = db.relationship('Question', backref=db.backref('comments',order_by=create_time.desc))
3.显示评论条数
{{ ques.comments|length }}
<h5>评论:({{ ques.comments|length }})</h5>
4.完成个人中心
1.个人中心的页面布局(html文件及相应的样式文件)
2.定义视图函数def usercenter(user_id):
3.向前端页面传递参数
4.页面显示相应数据
发布的全部问答
发布的全部评论
个人信息
5.各个页面链接到个人中心
个人中心html
{% extends 'base2.html' %} {% block title %}个人中心{% endblock %} {% block head %} <link rel="stylesheet" type="text/css" href="{{ url_for('static',filename='css/usercenter.css') }}"> {% endblock %} {% block main %} <div class="page-header"> <h4><span class="glyphicon glyphicon-user" aria-hidden="true"></span>☆{{ username }}<br><small>全部问答<span class="badge>"></span> </small> </h4> <ul class="list-group" style="margin:10px"> {% for foo in question %} <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 style="align-content: center">{{ foo.detail }}</p> </li> {% endfor %} </ul> </div> <div class="page-header"> <h5><span class="glyphicon glyphicon-user" aria-hidden="true"></span>☆{{ username }}<br><small>全部评论<span class="badge>"></span> </small> </h5> <ul class="list-group" style="margin:10px"> {% for foo in 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 style="align-content: center">{{ foo.detail }}</p> </li> {% endfor %} </ul> </div> <div class="page-header"> <h5><span class="glyphicon glyphicon-user" aria-hidden="true"></span>☆{{ username }}<br><small>个人信息<span class="badge>"></span> </small> </h5> <ul class="list-group" style="margin:10px"> <li class="list-group-item">用户:{{ username }}</li> <li class="list-group-item">编号:{{ id }}</li> <li class="list-group-item">昵称:{{ nickname }}</li> <li class="list-group-item">评论次数:{{ comments|length }}</li> </ul> </div> {% endblock %}
@app.route('/usercenter/<user_id>') @loginFirst def usercenter(user_id): user = User.query.filter(User.id == user_id).first() context = { 'username': user.username, 'question': user.question, 'comments': user.comments } return render_template('usercenter.html', **context)