簡體   English   中英

如何在Flask Web應用程序中的帖子上添加評論功能

[英]How to add comments feature to posts in a flask web application

我正在用Flask開發Web應用程序。我很困惑如何在Web應用程序中為帖子添加評論功能。 我的數據庫模型的部分內容如下

class Post(db.Model):
    id = db.Column(db.Integer, primary_key = True)
    title = db.Column(db.String(140))
    body = db.Column(db.String(2000))
    timestamp = db.Column(db.DateTime)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'))
    comments = db.relationship('Comment', backref='title', lazy='dynamic')

    def get_comments(self):
        return Comment.query.filter_by(post_id=post.id).order_by(Comment.timestamp.desc())


    def __repr__(self):
        return '<Post %r>' % (self.body)

class Comment(db.Model):
    id = db.Column(db.Integer, primary_key = True)
    body = db.Column(db.String(140))
    timestamp = db.Column(db.DateTime)
    post_id = db.Column(db.Integer, db.ForeignKey('post.id'))

    def __repr__(self):
        return '<Post %r>' % (self.body)

並張貼和評論表格為

class PostForm(Form):
    post = StringField('post', validators=[DataRequired()])
    title = StringField('title', validators=[DataRequired()])
class CommentForm(Form):
    comment = StringField('post', validators=[DataRequired()])

這些帖子由“用戶”模型中的Blog_posts()函數返回

def blog_posts(self):
        return Post.query.order_by(Post.timestamp.desc())

不確定如何返回與每個帖子相對應的評論。 得到帖子后,我的代碼調用了render template(index.html)。 那我如何獲得評論並打印呢? 請幫助我是初學者python開發人員

由於已經定義了PostComment之間的relationship ,因此可以在模板中簡單地執行以下操作:

                {% if post.comments %}
                {% if post.comments.count() > 0 %}
                    <h2>Comments</h2>
                    <p>
                    {% for comment in post.comments %}
                        <p>{{ comment.body }}</p>
                    {% endfor %}
                    </p>
                {% endif %}
                {% endif %}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM