zoukankan      html  css  js  c++  java
  • 作业33——评论列表显示及排序,个人中心显示

    1. 显示所有评论
      {% for foo in ques.comments %}
      <h4>评论:({{ quest.comments|length }})</h4>
                      <ul class="news-list">
                          {% for foo in quest.comments %}
                              <li class="list-group-item">
                                  <a href="#">{{ foo.author.username }} </a>
                                  <span class="badge">{{ foo.creat_time }}</span>
                                  <p>{{ foo.detail }}</p>
                              </li>
                          {% endfor %}
                      </ul>
    2. 所有评论排序
      uquestion = db.relationship('Question', backref=db.backref('comments', order_by=creat_time.desc))

    3. 显示评论条数
      {{ ques.comments|length }}
      class Comment(db.Model):
          __tablename__ = 'comment'
          id = db.Column(db.Integer, primary_key=True, autoincrement=True)
          author_id = db.Column(db.Integer, db.ForeignKey('user.id'))
          question_id = db.Column(db.Integer, db.ForeignKey('question.id'))
          creat_time = db.Column(db.DateTime, default=datetime.now)
          detail = db.Column(db.Text, nullable=False)
          question = db.relationship('Question', backref=db.backref('comments', order_by=creat_time.desc))
          author = db.relationship('User', backref=db.backref('comments'))
    4. 完成个人中心

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

    {% extends 'base.html' %} }
    {% block title %}用户中心{% endblock %}
    
    {% block head %}
        <!-- 引入 Bootstrap -->
        <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
    {% endblock %}
    
    {% block main %}
    
        <div class="page-header">
            <h3><span class="glyphicon glyphicon-user" aria-hidden="true"></span>
                {{ username }}
                <br>
                <small>all questions</small>
            </h3>
            <ul class="news-list">
                {% for foo in questions %}
                    <li class="list-group-item">
                        <span class="glyphicon glyphicon-heart" 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>
                {{ username }}
                <br>
                <small>all comments</small>
            </h3>
            <ul class="news-list">
                {% for foo in comments %}
                    <li class="list-group-item">
                        <span class="glyphicon glyphicon-heart" 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>User</small>
            </h3>
            <ul class="news-list">
    
                <li class="list-group-item">
                    <span class="glyphicon glyphicon-heart" aria-hidden="true"></span>
                    Username: {{ username }}
                </li>
                <li class="list-group-item">
                    <span class="glyphicon glyphicon-heart" aria-hidden="true"></span>
                    Nickname: {{ nickname }}
                </li>
    
            </ul>
        </div>
    {% endblock %}

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

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

    3.向前端页面传递参数

    4.页面显示相应数据

    发布的全部问答

    发布的全部评论

    个人信息

    5.各个页面链接到个人中心

    <a href="{{ url_for('usercenter',user_id=foo.author.id) }}">{{ foo.author.username }} 评论:({{ foo.comments|length }})</a>

    
    
  • 相关阅读:
    ubuntun16.04不支持intel的最新网卡,升级到17.10后解决
    python网络爬虫之使用scrapy下载文件
    Django之QuerySet 创建对象
    一起来学linux:磁盘与文件系统:
    python自动化运维九:Playbook
    一起来学linux:FTP服务器搭建
    Learning Scrapy 中文版翻译 第二章
    python自动化运维八:Ansible
    linux c编程:make编译一
    【原创】大叔经验分享(27)linux服务器升级glibc故障恢复
  • 原文地址:https://www.cnblogs.com/888abc/p/8033227.html
Copyright © 2011-2022 走看看