SqlAlchemy中用于字符串替换的方言特定函数

时间:2019-01-21 18:58:21

标签: python sqlalchemy

我正在尝试在Flask-SQLAlchemy中创建一个只读列,该列将读取另一列并替换其中的一些值。例如

from app.database import db # Flask-SQLAlchemy object.
from sqlalchemy import func
from sqlalchemy.ext.hybrid import hybrid_property

class A(db.Model)
    email = db.Column(db.String)

    @hybrid_property
    def name(self):
        return func.replace(self.email, '@example.com', '')

因为我在本地使用SQLite,但是在其他部署中使用Postgres,所以该解决方案将不起作用,因为在PostreSQL中该功能是regexp_replace而不是replace

总是可以选择在列表中进行迭代并在Python中进行替换,但是我想知道其他人是否可以想到一种更好的方法。

0 个答案:

没有答案