【问题标题】:How should i use sqlalchemy to access the schema我应该如何使用 sqlalchemy 访问架构
【发布时间】:2016-02-23 12:23:21
【问题描述】:

我有一个名为 models.py 的文件,我在其中声明:

Base = declarative_base()

class Vehicle(Base):
    __tablename__ = 'vehicle'
    id = Column(Integer, primary_key=True)
    code = Column(String(15), nullable=False)
    description = Column(String(100), default='')
    vehicletype_id = ForeignKey('VehicleType.id')

Base.metadata.create_all(engine)

这会在我的 PostgreSQL 数据库中创建数据库表。

我现在应该在我的 app.py 中使用:

from models.py import Vehicle

<do something with the Vehicle object>

或者我应该使用类似的东西:

meta = MetaData()
meta.reflect(bind=engine)
vehicle = meta.tables['vehicle']

当我想访问该表的架构和该表中数据库中的数据时。

我希望能够创建一个提供表架构的 API 调用 (flask-jsonrpc),以及另一个返回 PostgreSQL 数据库中该表的数据的 API 调用。

【问题讨论】:

    标签: python flask sqlalchemy flask-sqlalchemy


    【解决方案1】:

    由于您已经在使用声明性 ORM 方法(通过声明您的 Vehicle 类),因此没有必要反映它。当您处理现有数据库并且高级功能(例如定义自定义关系)对您来说并不重要时,通常会使用反射。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-05-03
      • 1970-01-01
      • 2017-12-12
      • 2014-10-22
      • 2014-10-03
      • 2010-09-13
      • 1970-01-01
      • 2021-05-29
      相关资源
      最近更新 更多