我正在构建一个使用Flask和SQLAlchemy的Web应用程序,但我似乎无法看到无法正确导入并正常工作的原因。
我正在尝试测试我正在构建的数据库,但我不断获得NameError
:
File1中:
from flask.ext.sqlalchemy import SQLAlchemy
from flask import Flask
from File2 import db, data1, data2, data3
文件2:
from flask import Flask
from flask.ext.sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///DB_File.db' # Uses '///' because '////' puts the file in '/' on server.
db.SQLAlchemy(app)
File2之后是一些继承db.Model
的类,但我认为我不需要在这里包含这些类。
为了得到错误,我正在提取Python解释器并执行import File1
。这看起来像:
>>> import File1
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Tux/code/AppName/app/Util/File1.py", line 6, in <module>
from KarmaCourtDB import db, data1, data2, data3
File "/Tux/code/AppName/app/Util/File2.py", line 6, in <module>
db.SQLAlchemy(app)
NameError: name 'db' is not defined
如果有人可以帮助我或指出我正确的方向,我真的很感激!此代码之前正在使用,我可以在导入后使用db.create_all()
创建数据库。
答案 0 :(得分:2)
db.SQLAlchemy(app)
未定义db
,并且仅尝试在SQLAlchemy()
上运行db
方法。
但是,db = SQLAlchemy(app)
会定义db
。