SQLAlchemy ORM с динамической схемой таблиц

Я пытаюсь заданиеSQLAlchemy ORM создать классField который описывает все поля в моей базе данных:

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
...

Мне нужен класс Field для

Инициализироваться с объектомfieldset прежде чем записи могут быть прочитаны из БДСхема определяетсяfieldset.get_schema() перед столом<schema>.fields читается

Что-то вроде этого:

session.query (Field (fieldset))). filter (Field.id == 'некоторое поле')

Тем не менее, добавив

def __init__(self, fieldset)
    pass

вclass Field результаты в

__init__() takes 1 positional argument...

Я мог бы смешать всеfields таблицы в одну схему и добавить столбец «имя_схемы», но мне все еще нужно, чтобы у Field была ссылка на его fieldset.

Можно ли это сделать с помощьюSQLAlchemy ORM или я должен переключиться наSqlAlchemy Core где бы я мог лучше контролировать создание объектов?

Ответы на вопрос(1)

Ваш ответ на вопрос