peewee中的动态字段查询

dynamic field query in peewee

我已经定义了模式并且能够通过 select 查询获得结果:

country = 'usa'
User.select(User.email, User.username).where(User.country==country)

我想过滤这个动态字段名,比如:

field = 'country'
country = 'usa'
User.select(User.email, User.username).where(User[field]==country)

可以吗?

试试 attrgetter:

from operator import attrgetter


field = 'country'
country = 'usa'
User.select(User.email, User.username).where(attrgetter(field)(User)==country)