0
我想任务SQLAlchemy的ORM创建类Field
描述在我的数据库中的所有领域:SQLAlchemy的ORM动态表模式
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
class Field(Base):
__tablename__ = 'fields'
__table_args__ = {'schema':'SCM'}
id = Column(String(20), primary_key=True)
的问题是,表fields
描述了在不同的模式不同领域,即
SCM.fields
TDN.fields
...
我需要类字段
- 使用对象
fieldset
进行初始化,然后才能从db中读取记录 - 在读取表
<schema>.fields
之前由fieldset.get_schema()
确定的模式。
像这样:
session.query(场(字段集)))过滤器(Field.id == '一些字段')
然而,添加
def __init__(self, fieldset)
pass
至class Field
结果
__init__() takes 1 positional argument...
- 我可以把所有
fields
表到一个模式,并添加列“SCHEMA_NAME”,但我仍然需要现场有链接到它的字段集。
可以这样使用SQLAlchemy的ORM做,或者我应该切换到SQLAlchemy的核心,我也不会对对象实例化更多的控制权?
Tab每个模式已经存在名为'fields'的字段?你可以用反射工作吗? –
我的意思是我有点不同的做法:将模式中的'fields'表分别反映到字典中,其中模式是关键字。 –
@IljaEverilä''fields''已经存在。它看起来像反射是SQLAlchemy核心的一部分。我试图在我的“DIY”库中部署SQLAlchemy。你建议我使用Core,还是使用Core创建反射并使用ORM? – Muposat