例如,我正在使用 chinook 数据库,我想将 Name 字段转换为 slug。 Slugify 是 Awesome-slugify 的一个功能。
SQL 中类似的东西
Select *, slugify(Name) as name_slug
from Artist
在 sqlalchemy 中我尝试过:
artist = Artist.query.add_columns(name_slug=slugify(Artist.Name)).all()
和
artist = Artist.query.add_columns(name_slug=[slugify(a.Name) for a in Artist.Name]).all()
我可以通过在终端中执行以下操作来生成名称列表:
art = models.Artist.query.all()
name_slug = [slugify(a.Name) for a in art]
print(name_slug)
但我不确定如何将它们联系在一起。
我没有 slugify 可供测试,但这可能就是您正在寻找的:
artist = Artist.query.add_columns(slugify(Artist.Name).label("name_slug")).all()
与 select 语句类似: stmt = sa.select(艺术家.年龄)
new_stmt = stmt.add_columns(艺术家.姓名)