我将sqlalchemy从0.7升级到0.9.6。升级后,我收到以下错误:
TypeError
TypeError: filter_by() takes exactly 1 argument (2 given)
在没有任何问题的情况下工作之前。我该如何处理这个问题?
答案 0 :(得分:18)
没有看到代码,显然你错误地调用了filter_by
。 filter_by
仅采用隐式self
('正好1个参数' 正好意味着1个位置参数)和可选的关键字参数。您正在提供filter_by
另一个位置参数,可能是字典。
语法为:
query.filter_by(column1=value, column2=value)
而filter
:
query.filter(Model.column1 == value, Model.column2 == value)