KeyError: ‘SQLALCHEMY_TRACK_MODIFICATIONS’ 修改无效
来源:4-10 .实现用户注册功能
西红柿卫士
2018-03-28
按老师的方法修改之后,依然报同样的错
写回答
2回答
-
西红柿卫士
提问者
2018-03-28
这个问题自己已经解决,没有采用之前同学所说的降低版本的方法,
试过两种办法都可行:
1.发现这个问题好像是因为app = Flask(__name__) 这句,启用一个flask框架的实例,在views 和models 是两个不同的app,所以运行views时候,就算加上
SQLALCHEMY_TRACK_MODIFICATIONS = True
也会继续报错,报的是在本app 没有注册
SQLALCHEMY_TRACK_MODIFICATIONS
所以,我只使用models的app 就解决了这个问题
# coding:utf8 import datetime from flask import render_template,redirect,flash from forms import LoginForm,QuestForm,RegisterForm from models import app,db,User app.config["SQLALCHEMY_TRACK_MODIFICATIONS"] = True from werkzeug.security import generate_password_hash app.config['SECRET_KEY']="1234" 这时views.py文件头部。在views中不启用app,删掉代码直接使用models的app
2.第二种方法是我一开始使用的,很简单把models 与views 合并 ...都在views 里面完成就没事
332018-11-01 -
慕斯6438358
2018-05-22
同学如果你使用的是PyCharm工具的话你可以点击进入“SQLAlchemy
”类,然后修改def get_app这个方法:def get_app(self, reference_app=None): """Helper method that implements the logic to look up an application.""" if reference_app is not None: return reference_app #添加这个if判断到文件中然后保存,应该可以解决问题 if self.app is not None: return self.app if current_app: return current_app._get_current_object() if self.app is not None: return self.app
00
相似问题