从 SQLalchemy 过渡到 psycopg2
Transitioning from SQLalchemy to psycopg2
我一直在将 Flask 与 SQLAlchemy 一起使用,但我已经过渡到使用 psycopg2 从我的数据库中插入和 return 值。我想知道我的 Model.py 和 db 对象中的 classes 应该如何改变,因为我不再使用 SQLAlchemy。我还需要这些吗?
设置数据库对象:
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///' + os.path.join(basedir, 'data.sqlite')
app.config['SQLALCHEMY_COMMIT_ON_TEARDOWN'] = True
db.SQLALCHEMY(app)
我的模型文件中的 class 示例:
class User(UserMixin, db.Model):
__tablename__ = 'users'
id = db.Column(db.Integer, primary_key=True)
email = db.Column(db.String(64), unique=True, index=True)
username = db.Column(db.String(64), unique=True, index=True)
role_id = db.Column(db.Integer, db.ForeignKey('roles.id'))
zipAddress = db.Column(db.String(64))
据我了解,您想使用 postgresql 而不是 sqlite,对吗?如果是,那么您只需要更改 SQLALCHEMY_DATABASE_URI = 'postgresql uri
就可以了。
如果你根本不想使用它,那么你需要设置你的 psycopg2
设置。但是我建议使用SQLAlchemy
。您可以继续使用 posgresql
来保存数据,如果您想继续使用 sqlalchemy,则不能删除该文件(Models.py)和数据库实例。
使用 sqlalchemy,您可以轻松地更改 tables 并根据需要添加新的 tables。
最后一件事 这并不意味着您在使用 sqlalchemy 时不能使用 postgresql。 SQLalchemy 只是一个框架,它使代码库适用于 sqlite
、mysql
、postgresql
所有那些你只需要更改 DATABASE_URI
然后它将创建 table为你。
我建议检查 flask-sqlalchemy
我一直在将 Flask 与 SQLAlchemy 一起使用,但我已经过渡到使用 psycopg2 从我的数据库中插入和 return 值。我想知道我的 Model.py 和 db 对象中的 classes 应该如何改变,因为我不再使用 SQLAlchemy。我还需要这些吗?
设置数据库对象:
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///' + os.path.join(basedir, 'data.sqlite')
app.config['SQLALCHEMY_COMMIT_ON_TEARDOWN'] = True
db.SQLALCHEMY(app)
我的模型文件中的 class 示例:
class User(UserMixin, db.Model):
__tablename__ = 'users'
id = db.Column(db.Integer, primary_key=True)
email = db.Column(db.String(64), unique=True, index=True)
username = db.Column(db.String(64), unique=True, index=True)
role_id = db.Column(db.Integer, db.ForeignKey('roles.id'))
zipAddress = db.Column(db.String(64))
据我了解,您想使用 postgresql 而不是 sqlite,对吗?如果是,那么您只需要更改 SQLALCHEMY_DATABASE_URI = 'postgresql uri
就可以了。
如果你根本不想使用它,那么你需要设置你的 psycopg2
设置。但是我建议使用SQLAlchemy
。您可以继续使用 posgresql
来保存数据,如果您想继续使用 sqlalchemy,则不能删除该文件(Models.py)和数据库实例。
使用 sqlalchemy,您可以轻松地更改 tables 并根据需要添加新的 tables。
最后一件事 这并不意味着您在使用 sqlalchemy 时不能使用 postgresql。 SQLalchemy 只是一个框架,它使代码库适用于 sqlite
、mysql
、postgresql
所有那些你只需要更改 DATABASE_URI
然后它将创建 table为你。
我建议检查 flask-sqlalchemy