Flask 如何组织数据库模型

Flask 如何组织数据库模型,flask,sqlalchemy,flask-sqlalchemy,Flask,Sqlalchemy,Flask Sqlalchemy,要在db中创建新表,我编写如下内容: class Cat(db.Model): id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(40)) age = db.Column(db.String(40)) born_date = db.Column(db.DateTime, default=datetime.datetime.utcnow) is_feline = d

要在db中创建新表,我编写如下内容:

class Cat(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(40))
    age = db.Column(db.String(40))
    born_date = db.Column(db.DateTime, default=datetime.datetime.utcnow)
    is_feline = db.Column(db.Boolean)

class Dog(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(40))
    age = db.Column(db.String(40))
    born_date = db.Column(db.DateTime, default=datetime.datetime.utcnow)
    wave_tail = db.Column(db.Boolean)
只创建了两个表。猫和狗。经典的一个,来自教程

我想做这样的事

class Animal(object):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(40))
    age = db.Column(db.String(40))
    born_date = db.Column(db.DateTime, default=datetime.datetime.utcnow)

    common_functions

class Cat extends Animal:
      is_feline = db.Column(db.Boolean)

      def override common_functions
      def specific functions

class Dog extends Animal:
      wave_tail = db.Column(db.Boolean)
只创建了两个表。猫和狗


或者有没有一个地方可以让我学到这些。SQLAlchemy文档非常庞大…

同时从SQLAlchemy模型类和父类继承实体:

class Animal(object):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(40))
    age = db.Column(db.String(40))
    born_date = db.Column(db.DateTime, default=datetime.datetime.utcnow)

    def hi(self):
        print 'hello!'


class Cat(Animal, db.Model):
    __tablename__ = 'cats'
    is_feline = db.Column(db.Boolean)

    def hi(self):
        print 'cat'

    def hello(self):
        print 'hello'


class Dog(Animal, db.Model):
    __tablename__ = 'dogs'
    wave_tail = db.Column(db.Boolean)