Flask-SQLAlchemy. Создайте несколько таблиц с одинаковыми полями

Я использую Flask с расширением SQLAlchemy. Мне нужно определить несколько классов моделей, которые будут создавать таблицы в базе данных MySQL. Таблицы будут отличаться только названием, все имена полей/типы данных в них будут идентичными. Как определить классы для всех этих таблиц? Я думаю о некотором наследовании, но я не совсем уверен, как именно я это сделаю.


person Andrii Yurchuk    schedule 24.10.2011    source источник


Ответы (1)


Просто определите все свои столбцы в примесном классе:

from sqlalchemy.ext.declarative import declarative_base

Base = declarative_base()

class MyMixin(object):
    id =  Column(Integer, primary_key=True)
    data = Column(String)

class MyModel1(MyMixin, Base):
    __tablename__ = 'models1'

class MyModel2(MyMixin, Base):
    __tablename__ = 'models2'
person Denis Otkidach    schedule 24.10.2011