Flask-SQLAlchemy困境:一个业务逻辑对象的单个/单独的类

时间:2014-05-11 21:17:00

标签: python orm flask-sqlalchemy

也许这是一个与文化有关的问题,但无论如何我都会试一试。

因此,在docs of Flask-SQLAlchemy中,我们鼓励通过声明db.Model派生类来建立我们的模型:

class User(db.Model):
    __tablename__ = 'USR_User'
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(80), unique=True)

然而,根据古代惯例,我的数据库字段有点难看:USR_User.usrID,USR_User.usrName等。

我希望我的Python User对象更干净,并且没有“usr”前缀的属性,还有一些其他不一定与数据库连接相关的好方法。

所以,问题出现了,我是否应该在单个类中声明替代字段名称,例如

class User(Base):
    __tablename__ = 'USR_User'
    id = Column('usrID', Integer, primary_key=True)
    name = Column('usrName', String(50))

    ... and all the methods

或者,我应该将数据表连接模型与业务逻辑模型分开,并将它们与mapper连接(我不确定在Flask-SQLAlchemy下如何做到这一点的正确方法)。

我不确定这种分离是否带来任何好处,但我有点直觉地想要将两个班级分开。

0 个答案:

没有答案