在写 SQLAlchemy 查询的时候:
if x == 'a':
query = db.session.query(a, b, c)
elif x == 'b':
query = db.session.query(d, e, f)
else:
print('error')
if y == 'p':
query = query.join(P)
else y == 'q':
query = query.join(Q)
else:
print('error')
if x == 'a':
query = query.group_by(a)
elif x == 'b':
query = query.group_by(d)
else:
print('error')
有更好的写法吗?
1
renmu123 2019-05-31 15:05:57 +08:00 via Android
用 dict 做映射
|
2
hjq98765 2019-05-31 15:33:32 +08:00
都是等号判断,dict 足够了
|
3
coolair OP |
4
renmu123 2019-05-31 18:52:34 +08:00 via Android
dict1={
'a': [a, b, c] 'b': [d, e, f] } value = dict1[x] query = db.session.query(value[0], value[1], value[2]) 感觉这样也不是很优雅 |
5
sdtfll 2019-06-01 14:34:39 +08:00 via Android
挺好的啊,朴实点,任何人都看得懂,不绕脑子,多几个字符无所谓,
|