应用程序存储客户端输入的消息。但是,每次我运行该应用程序时,它也会加载以前的数据。我想在每次关闭应用程序时清除数据库。
这是一个基本的聊天应用程序,我可以在其中显示用户输入的消息。但是它一直将消息存储在相同的数据库中。我试图打开自动冲洗功能,但这没用。
app.config['SQLALCHEMY_DATABASE_URI']='sqlite:///messages.db
db = SQLAlchemy(app, session_options = {"autoflush":True})
这是我的数据库模型:
@app.route('/message', methods=['POST'])
def message():
try:
username = request.form.get('username')
message = request.form.get('message')
new_message = Message(username=username, message=message)
db.session.add(new_message)
db.session.commit()
#db.session.expire()
pusher_client.trigger('chat-channel', 'new-message', {'username' : username, 'message': message})
return jsonify({'result' : 'success'})
except:
return jsonify({'result' : 'failure'})
这是我要返回的用于打印数据库内容的模板的一部分:
<div id="content" class="container" style="overflow-y:auto; margin-bottom: 100px;">
{% for message in messages %}
<article class="media">
<div class="media-content">
<div class="content">
<p>
<strong>{{ message.username }}</strong>
<br> {{ message.message }}
</p>
</div>
</div>
</article>
{% endfor %}
每次关闭fask应用程序时,我都希望获得数据库的内容。