码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2017-12-07 19:14:33      阅读:16      评论:0      收藏:0      [点我收藏+]

标签:lis   author   hold   建立   hidden   comment   映射   xtend   action   

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

@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)

2.首页标题的标签做带参数的链接。

      {{ url_for(‘detail‘,question_id = foo.id) }}

 <li class="list-group-item"style="background-color:lightblue;height:190px;width:400px;">
            <span class="glyphicon glyphicon-leaf" aria-hidden="true"></span>
            <a href="{{ url_for(‘detail‘ ,question_id=foo.id)}}">id:{{ foo.author.username }}</a>
            <br>
            <a href="http://www.jianshu.com/">标题:{{ foo.title }}</a>
            <br>
            <p style="color:black">详情:{{ foo.detail }}</p>
            <br>
          <span class="badge"style="margin-left: 50%">{{ foo.creat_time }}</span>
        </li>

 

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

{{ ques.title}}
{{ ques.id  }}{{  ques.creat_time }}
{{ ques.author.username }} 
{{ ques.detail }}

 

{% extends ‘base2.html‘ %}
{% block title %}问答详情{% endblock %}
{% block main %}

        <div class="page-header">
            <h3 style="font-family:宋体;text-align: left;font-size: 40px">详情页</h3>
    <h4>{{ ques.title }}<br><small>{{ ques.author.username }}<span class="badge">{{ ques.creat_time }}</span></small></h4>
             </div>

    <p class="lead">{{ ques.detail }}</p>
    <hr>
    <form action="{{ url_for(‘question‘) }}" method="post">
    <div><textarea class="form-control" id="new_comment" rows="6" placeholder="write your comment"style="height:200px;width:800px" ></textarea><br></div>
    <button type="submit" class="fabu"style="width:100px">发布</button>
    </form>
    <ul class="list-group" style="margin: 10px"></ul>

{% endblock %}

技术分享图片

 

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

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

5.尝试实现发布评论。

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))
    detail = db.Column(db.Text, nullable=False)
    create_time = db.Column(db.DateTime, default=datetime.now)
    question = db.relationship(Question, backref=db.backref(comments,order_by=create_time.desc))
    author = db.relationship(User, backref=db.backref(comments))

 

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

标签:lis   author   hold   建立   hidden   comment   映射   xtend   action   

(0)
(0)
   
举报
评论 一句话评论(0
0条  
登录后才能评论!
© 2014 mamicode.com 版权所有 京ICP备13008772号-2
迷上了代码!