我看到以下可能:
attr_name = 'name'
param_value = 'John'
select(getattr(c, attr_name) for c in Customer)
但是,我得到一个错误:
attrs = ['id', 'name']
select((getattr(c, attr) if for attr in attr_name) for c in Customer)
是否有可能在select语句中执行此操作? (即不拉所有东西,然后只拉我关心的列)
这几乎与此处引用的用例相同:
答案 0 :(得分:0)
这可以解决问题,但不在select
语句之内:
attrs = ['id', 'name']
for attr in attrs:
select(getattr(c, attr) for c in Customer)