烧瓶SQLAlchemy的。创建几个相同的所有字段的表

时间:2011-10-24 14:29:39

标签: python sqlalchemy flask flask-sqlalchemy

我正在使用Flask及其SQLAlchemy扩展。我需要定义几个模型类,它们将在MySQL数据库中创建表。这些表只会因名称而不同,其中的所有字段名称/数据类型都是相同的。如何为所有这些表定义类?我正在考虑继承,但我不确定我究竟会这样做。

1 个答案:

答案 0 :(得分:8)

只需在a mix-in class中定义所有列:

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'