我正在创建一个搜索栏,用户可以在其中输入诸如电影标题,imdb id,发行年份之类的关键字来查找匹配电影的列表。我有一个名为Movie的表格,看起来像这样:
id title year runtime rating
tt1490017 The Lego Movie 2014 100 7.8
tt0111161 The Shawshank Redemption 1994 142 9.3
tt0068646 The Godfather 1972 175 9.2
我有一个查询,查找包含用户输入的关键字的电影,如下所示:
movies = db.session.query(Movie).filter_by(or_(id=searchkey,title=searchkey,year=searchkey))
其中searchkey
是用户在搜索栏中输入的内容。但是,当我运行它时,它给了我说TypeError: or_() got an unexpected keyword argument 'id'
的错误。我是否弄乱了语法或还有其他问题吗?非常感谢您的帮助。