• 从首页问答标题到问答详情页


    主PY文件写视图函数,带id参数。 

    @app.route('/detail/<question_id>')
    def detail(question_id):
        quest = 
        return render_template('detail.html', ques = quest)
    @app.route('/detail/<question_id>')
    def detail(question_id):
        quest = Question.query.filter(Question.id == question_id).first()
        return render_template('detail.html',ques =quest)

    首页标题的标签做带参数的链接。
          {{ url_for('detail',question_id = foo.id) }}

    {% extends 'base.html' %} }
    {% block title %}首页{% endblock %}
    
    {% block main %}
        <p>{{ username }}用户,welcome</p>
    <h1></h1>
    <h2>欢迎光临</h2>
        <ul class="list-group">
            {% for foo in questions %}
                <li style="box-shadow: #cccccc" class="list-group-item">
                    <span class="glyphicon glyphicon-leaf" aria-hidden="true"></span>
                    <a href="">{{foo.author.username}})</a>
                    <br>
                    <a href="{{ url_for('detail',question_id=foo.id) }}" class="title">{{foo.title}}</a>
                    <br>
                    <span class="badge">{{foo.creat_time}}</span>
                    <p class="detail">{{foo.detail}}</p>
                 </li>
            {% endfor %}
        </ul>
    {% endblock %}
    <!--评论:({{foo.comments.length }}-->
    <!--<a href="{{url_for('usercenter',user_id = foo.author_id)}}">{{foo.author.username}}评论:({{foo.comments.length }})</a>-->

    在详情页将数据的显示在恰当的位置。 

    {{ ques.title}}
    {{ ques.id  }}{{  ques.creat_time }}
    {{ ques.author.username }} 
    {{ ques.detail }}
    {% 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 %}
    
    <h3 >问题详情</h3>
    <div class="container">
        <div class="row clearfix">
            <div class="col-md-12 column">
                <h3 class="text-center">
                    {{ques.title}}<br>
                    <small>{{ques.author.username}}
                    </small>
                    <span>{{ques.creat_time}}</span>
                </h3>
    
                <p class="text-center">
                     {{ques.detail}}
                </p>
                <form role="form">
                    <div class="form-group">
                         <label for="exampleInputEmail1">Write down your comment</label>
                        <input type="email" class="form-control" id="exampleInputEmail1" />
                    </div>
                     <button type="submit" class="btn btn-default">提交</button>
                    <br>
                </form>
            </div>
        </div>
    </div>
    {% endblock %}
    
    <!--{{ques.title}} {{ques.author.username}} {{ques.creat_time}} {{ques.detail}}-->
    <!--pinglun:({{ques.comment[length}})-->

    建立评论的对象关系映射:

    class Comment(db.Model):
        __tablename__='comment'

    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.Colunmn(db.Text , nullable=False)
        question = db.relationship('Question',backref = db.backref('comments'))
        author = db.relationship('User',backref = db.backref('comments'))
  • 相关阅读:
    XMU1349 xmu_1349
    字符串排序
    linux磁盘文件与目录管理系统(2)
    poj 3667 Hotel
    poj 3468 A Simple Problem with Integers
    linux文与目录管理
    Linux的磁盘与文件管理系统(1)
    hdu 1698 Just a Hook
    poj3225 Help with Intervals
    poj 2886Who Gets the Most Candies?
  • 原文地址:https://www.cnblogs.com/lianghaohui123/p/7989157.html
Copyright © 2020-2023  润新知