HTML 显示 Flask-SQLAlchemy 语法?

HTML shows Flask-SQLAlchemy syntax?

当试图在我的页面上显示用户的回复时,它使用 SQL 语法显示它们,如下所示:('reply',) 我在从我的页面返回时尝试过 str()路线。 html:

<ul style="float:left;" class="list-group list-group-flush" id="anons">
{% for reply in replies %}
    <li class="list-group-item" align="left">
        {{ reply }}
    </li>
        {% endfor %}

型号:

class Reply(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(30))
    data = db.Column(db.String(10000))
    date = db.Column(db.DateTime(timezone=True), default=func.now())

路线:

@views.route('/', methods=["GET", "POST"])
def home():
    if request.method == "POST":
        name = request.form.get("name")
        data = request.form.get("reply")

        if len(data) >= 1:
            new_reply = Reply(name=name, data=data)
            db.session.add(new_reply)
            db.session.commit()
            replies = db.session.query(Reply.data)

            return render_template('home.html', replies=replies)

    return render_template('home.html')

尝试将您的 replies 定义修改为:

replies = Reply.query.all()

这实际上创建了所有 'Reply' 对象的列表,然后您将其传递给模板。如果您只想显示每个 'Reply' 的 .data 属性,您可以在 for 循环中使用 {{ reply.data }} 访问它。