猿问

将sqlalchemy的filter和filter_by函数包装在一个函数中

我想将功能filter和filter_by包装到一个函数中,并根据参数调用filter或filter_by。


该函数的行为必须使这两个函数返回相同的结果:


MyModel.get(MyModel.mycolumn == 'value')

MyModel.get(mycolumn='value')

有没有办法做到这一点?谢谢!


慕后森
浏览 332回答 1
1回答

心有法竹

我认为您可以根据是否以关键字给出参数来做到这一点:def get(*args, **kwargs):    if kwargs:        return query.filter_by(**kwargs)    else:        return query.filter(*args)
随时随地看视频慕课网APP

相关分类

Python
我要回答