python - Sqlalchemy - 向查询添加列

标签 python python-3.x flask sqlalchemy flask-sqlalchemy

例如我正在使用 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()

我可以通过在终端中执行以下操作来生成 name slugs 列表:

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()

关于python - Sqlalchemy - 向查询添加列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41603584/

相关文章:

python - Flask CSRF 保护在响应 header 上设置无效的 Set-Cookie

python - Heroku 本地失败,没有错误消息

Javascript, CSS 优化器

python - WTForms:IntegerField 跳过对字符串值的强制转换

python - 如何在 Bokeh 散点图中显示不同颜色的图例?

mysql - 无法在虚拟环境中为django安装mysqlclient

python - 如何使用 FlaskClient 测试分段上传(用于单元测试)

python - scriptExit 1 与 pybedtools venn_mpl - snakemake 5.2.4

python - 在回归中使用 group by 定义 python 中的 x 和 y 值

python - 在Raspberry pi 3中安装openCV失败