数据库
首页 > 数据库> > python-SQLAlchemy-通过用户名加载用户

python-SQLAlchemy-通过用户名加载用户

作者:互联网

只是在这里进入塔架,并试图让我了解SQLALchemy的基础知识.我想通了如何通过id加载记录:

user_q = session.query(model.User)
user = user_q.get(user_id)

但是如何查询特定字段(即用户名)?我认为有一种快速的方法可以对模型进行操作,而不是手工构建查询.我认为查询对象上的add_column()函数具有某些功能,但我不太清楚如何使用它.我一直在尝试这样的事情,但是显然它不起作用:

user_q = meta.Session.query(model.User).add_column('username'=user_name)
user = user_q.get()

解决方法:

我相信您想要这样的东西:

user = meta.Session.query(model.User).filter_by(name=user_name).first()

这是简短的:

user = meta.Session.query(model.User).filter(model.User.name=user_name).first()

Here’s more documentation

如果将first()更改为one(),如果没有用户(如果您想断言一个用户存在),它将引发异常.

我强烈建议您同时阅读Object Relational Tutorial和和SQL Expression Language Tutorial.

标签:pylons,sqlalchemy,python
来源: https://codeday.me/bug/20191208/2094301.html