这是我的第一个python应用程序,我一直在努力让flask和sqlalchemy的迁移工作正常。我终于成功了,但是现在当我运行应用程序时,当我向表中添加一个用迁移代码修改的对象时,我得到了一个错误。 这是在db.session.add(newTag)上引发异常的视图
def put(self):
json_data = request.get_json(force=True)
foo = json_data['foo'] if 'foo' in json_data else ''
bar = json_data['bar'] if 'bar' in json_data else ''
baz = json_data['baz'] if 'baz' in json_data else ''
try:
boo = parse(json_data['boo'])
far = parse(json_data['far'])
except:
return jsonify(result='Invalid date')
faz = json_data['faz'] if 'faz' in json_data else ''
if faz == '':
return jsonify(result="faz is missing")
newTag = Tags(faz, baz, foo, bar, boo, far, True)
db.session.add(newTag)
db.session.commit()
return {'Success, tag' + str(newTag.id) + ' created'}
我的模特像这样
class Tags(db.Model):
id = db.Column(db.Integer, primary_key=True)
faz = db.Column(db.String(255))
foo = db.Column(db.Integer)
bar = db.Column(db.Integer)
baz = db.Column(db.Integer)
boo = db.Column(db.DateTime)
far = db.Column(db.DateTime)
status = db.Column(db.Boolean)
def __init__(self, faz, foo, bar, baz, boo, far, status):
self.faz = faz
self.foo = foo
self.bar = bar
self.baz = baz
self.boo = boo
self.far = far
self.status = status
我不确定是否需要进一步的细节来帮助我。 我已经将SQLALCHEMY_TRACK_MODIFICATIONS=False放在包含我的SQLALCHEMY_数据库的config.py文件中。
我也有同样的错误。
这个错误确实不明确。 我在mysql日志中寻找响应,但一切正常。
然后我使用旧版本的sqlalchemy。 我使用版本2.1,然后传入版本1.0。 我得到的错误更清楚。
若要将SQLALCHEMY_TRACK_MODIFICATIONS设置为False或True,绝对不会更改您的错误。
问题是连接进入你的应用程序,你的数据库和你的sqlalchemy。
听说是我的阿奇
在init.py中,我将所有配置
然后在manager.py中创建一个类来操作数据库 所以我必须在manager.py中导入db,我做到了。
My views.py只调用我的管理器的方法,My main.py调用myviews.py的函数
但问题是我总是有这个错误。所以我改变了我的架构。 我在我的应用程序文件夹中创建了一个文件config.py
在档案里。在我的main.py中
如果我需要在我的应用程序中的某个地方调用db,我只需从main.py调用它,问题就解决了。
我对烧瓶的理解不够,我很抱歉向你解释这个问题。我希望这个回应能帮助你。 我认为这个错误通常发生在烧瓶的配置输入ORM而你的应用程序不正常时。
相关问题 更多 >
编程相关推荐