評論列表顯示及排序,我的中心顯示

1.顯示全部評論
{% for foo in ques.comments %}html

 

2.全部評論排序
uquestion = db.relationship('Question', backref=db.backref('comments', order_by=creat_time.desc))前端

 

3.顯示評論條數
{{ ques.comments|length }}app


1題代碼以下:函數

<h3>評論區:
    ({{ ques.comments|length }})
</h3><br>


<div class="basic_box" style="padding-bottom: 50px;">
    <ul class="list-group" style="margin-bottom: 10px">
      {% for qu in ques.comments %}

            <li class="list-group-item" style="width: 800px">


                <a class="wrap-img" href="#" target="_blank">
                    <img src="{{ qu.author.image }}" width="50px">
                </a>
                <span class="glyphicon glyphicon-left" aria-hidden="true"></span>

                <br>
                <a href="{{ url_for('person',user_id=qu.author.id) }}">{{ qu.author.username }}</a>
                <span class="badge">評論時間:{{ qu.creat_time }}</span>
                <p style="">{{ qu.detail }}
                </p>


            </li>
     {% endfor %}
    </ul>

2題代碼佈局

#進入每篇文章詳情頁
@app.route('/detail/<question_id>',methods=['GET','POST'])

def detail(question_id):
    quest=Question.query.filter(Question.id==question_id).first()

    context={
       'comments':Comment.query.filter(Comment.question_id==question_id).order_by('-creat_time').all()

    }
    return render_template('detail.html',**context,ques=quest)

運行結果:url

 

 

 

 

4.完成我的中心spa

1.我的中心的頁面佈局(html文件及相應的樣式文件)3d

html文件以下:code

{% extends 'basic.html' %}
{% block title %} 我的中心{% endblock %}

{% block aa %}


<div class="container">
    <div class="row clearfix">
        <div class="col-md-2 column">
        </div>
        <div class="col-md-6 column">


<h1><img src="{{ img }}" width="50px">{{usern }}</h1>

    <br>所有問答


<div class="basic_box" style="padding-bottom: 50px;">
    <ul class="list-group">

           {% for qu in ques %}

            <li class="list-group-item" style="width: 800px">

<a class="wrap-img" href="#" target="_blank">
                    <img src="{{ qu.author.image }}" width="50px">
                </a>
                <span class="glyphicon glyphicon-left" aria-hidden="true"></span>
                <a href="{{ url_for('person',user_id=qu.author.id) }}" target="_blank">{{ qu.author.username }}</a>
                <br>
                <a href="{{ url_for('detail',question_id=qu.id) }}">{{qu.title }}</a>

                <br>
                <span class="badge">發佈時間:{{ qu.creat_time }}</span>
                <p style="">{{ qu.detail }}
                </p>



            </li>
     {% endfor %}
    </ul>
</div>

<h1><img src="{{ img }}" width="50px">{{usern }}</h1>
    <br>所有評論



<div class="basic_box" style="padding-bottom: 50px;">
    <ul class="list-group" style="margin-bottom: 10px">
      {% for qu in users %}


            <li class="list-group-item" style="width: 800px">


                <a class="wrap-img" href="#" target="_blank">
                    <img src="{{ qu.author.image }}" width="50px">
                </a>
                <span class="glyphicon glyphicon-left" aria-hidden="true"></span>

                <br>
                <a href="#">{{ qu.author.username }}</a>
                <span class="badge">評論時間:{{ qu.creat_time }}</span>
                <p style="">{{ qu.detail }}
                </p>


            </li>
     {% endfor %}
    </ul>
<br>
<br>
<h1><img src="{{ img }}" width="50px">{{usern }}</h1>
    <br>我的信息

<div class="basic_box" style="padding-bottom: 50px;">
    <ul class="list-group" style="margin-bottom: 10px">
{#      {% for qu in users %}#}


          <li class="list-group-item" style="width: 800px"> 用戶:{{ usern }}</li>
          <li class="list-group-item" style="width: 800px"> 編號:{{ id }}</li>
          <li class="list-group-item" style="width: 800px"> 問答數:{{ ques|length }}</li>
          <li class="list-group-item" style="width: 800px"> 評論數:{{ comment|length }}</li>



{#      {% endfor %}#}
    </ul>

        </div>
        <div class="col-md-4 column">
        </div>
    </div>
</div>















</div>




</div>

{% endblock %}

 

 

 

2.定義視圖函數def usercenter(user_id):htm

# 我的中心
@app.route('/person/<user_id>',methods=['GET','POST'])
def person(user_id):
    user = User.query.filter(User.id == user_id).first()

    context = {
        'img':user.image,
        'id':user_id,
        'usern':user.username,
        'ques': Question.query.filter(Question.author_id == user_id).order_by('-creat_time').all(),
        'users': Comment.query.filter(Comment.author_id == user_id).order_by('-creat_time').all(),
        'comment': user.comments
    }
    return render_template('person.html', **context)

 

3.向前端頁面傳遞參數

  context = {
        'img':user.image,
        'id':user_id,
        'usern':user.username,
        'ques': Question.query.filter(Question.author_id == user_id).order_by('-creat_time').all(),
        'users': Comment.query.filter(Comment.author_id == user_id).order_by('-creat_time').all(),
        'comment': user.comments
    }
<h1><img src="{{ img }}" width="50px">{{usern }}</h1>

    <br>所有問答


<h1><img src="{{ img }}" width="50px">{{usern }}</h1>
    <br>所有評論


          <li class="list-group-item" style="width: 800px"> 用戶:{{ usern }}</li>
          <li class="list-group-item" style="width: 800px"> 編號:{{ id }}</li>
          <li class="list-group-item" style="width: 800px"> 問答數:{{ ques|length }}</li>
          <li class="list-group-item" style="width: 800px"> 評論數:{{ comment|length }}</li>

 

4.頁面顯示相應數據

發佈的所有問答

發佈的所有評論

我的信息

效果以下:

 

5.各個頁面連接到我的中心

導航欄的暱稱鏈接:

 {% if username %}

        <li><a href="{{ url_for('person',user_id=user.id) }}"><h2>{{ username }}</h2></a></li>
        <li><a href="{{ url_for('logout') }}"><h2>註銷</h2></a></li>
    {% else %}
        <li><a href="{{ url_for('login') }}"><h2>登陸</h2></a></li>
        <li><a href="{{ url_for('zhuce') }}"><h2>註冊</h2></a></li>
    {% endif %}
    <li><a href="{{ url_for('question') }}"><h2>問答</h2></a></li>
</ul>

主頁暱稱鏈接:

  <a href="{{ url_for('person',user_id=foo.author.id) }}" target="_blank">{{ foo.author.username }}</a>

評論列表裏面的暱稱鏈接:

                <a href="{{ url_for('person',user_id=qu.author.id) }}">{{ qu.author.username }}</a>

文章中做者名字鏈接:

   做者:<a href="{{ url_for('person',user_id=ques.author.id) }}">{{ ques.author.username }}</a>
相關文章
相關標籤/搜索