我正在尝试做相同的事情
cast(regexp_replace(entry.page_title,'.*::: ','') AS INT)
使用SQLAlchemy。
我已经看到您可以使用hybrid properties在ORM映射的类上执行函数。 我尝试过以下操作,但我真的不知道如何使用混合属性来进行字符串替换。
class Entry(object):
def __init__(self, page_title):
self.page_title = page_title
@hybrid_property
def original_brand_id(self):
return self.page_title.partition(' ::: ')[-1]
###OR ALSO TRIED DOING:
return re.sub(r'[.*::: ]','',self.page_title)
我知道问题是我想将Entry的标题作为string
当它实际上是InstrumentedAttribute
时。但是我不清楚如何获得字符串值,让它做我想做的事情。
甚至可能吗?
答案 0 :(得分:4)
原来有一个功能,所以我可以做
@hybrid_property
def original_brand_id(self):
return cast(func.regexp_replace(self.page_title, '.*::: ',''), Numeric)
我会删除这个问题,但是我花了很长时间才搜索到这个问题,我只是想把它留在这里以防万一其他人需要它。