我有一节烧瓶课:class Likes(object):
def __init__(self, model, table_id):
self.model = model
self.table_id = table_id
if request.form["likes"] == 'like':
query = self.model.query.filter_by(id=table_id).first()
query.likes += 1
db.session.commit()
flash(u'Like =)) ' + query.title, 'info')
elif request.form["likes"] == 'dislike':
query = self.model.query.filter_by(id=table_id).first()
query.likes -= 1
db.session.commit()
flash(u"Don't like =(" + query.title, 'info')
每次用户发送POST请求时,我都想调用这个类,但是每次创建类的实例时,我都需要添加check请求类型:# ...
if request.method == 'POST':
Likes(Post, request.form["post_id"])
# ...
如何改进我的课程并在其中添加此检查:if request.method == 'POST':
# ...
解决方案:
在请求前使用decorator@app@app.before_request
def before_req():
if request.method == 'POST':
flash(u'Before request', 'success')