我有以下代码
from sqlalchemy import *
from sqlalchemy.orm import *
engine = create_engine("postgresql+psycopg2://test:password@localhost/test")
Session = sessionmaker(bind=engine)
session = Session()
metadata = MetaData()
metadata.bind = engine
table = Table('test_table', metadata, autoload = True)
a = session.query(table).filter(table.c.id.in_['1', '2'])
这是遇到的错误。
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'instancemethod' object is unsubscriptable
我确信这是我做错了,因为我是python的新手。提前谢谢(我很确定这是一个新手的错误)
答案 0 :(得分:2)
ColumnOperators.in_是一个函数,因此必须调用。以下应该工作:
a = session.query(table).filter(table.c.id.in_(['1', '2']))