私のモデルを定義するためにSQLAlchemy宣言ベースを使用しています。 、SQLAlchemy:テーブルフィールドに基づくクエリカスタムプロパティ
Session.query(Entry).filter(Entry.name == my_name).first()
>>> ArgumentError: filter() argument must be of type sqlalchemy.sql.ClauseElement or string
しばらく調査した後:
name
を使用してクエリを実行しようとしている
class Entry(Base):
__tablename__ = "blog_entry"
id = Column(Integer, primary_key=True)
title = Column(Unicode(255))
...
@property
def name(self):
return re.sub(r'[^a-zA-Z0-9 ]','',self.title).replace(' ','-').lower()
、SQLAlchemyのは、エラーがスローされます。私は、列(title
)1から計算されたプロパティが定義されname
私はおそらくcomparable_using()
助けることができるが、私はテーブルの別の列を参照するコンパレータを示す任意の例を見つけることができませんでした。
これも可能ですか、それとも良い方法がありますか?
おかげで、私は今、私は別のアプローチを試みなければならないことがわかります。 – amercader