instancemethod对象是in_方法的unsubscriptable

时间:2012-07-23 12:20:05

标签: sqlalchemy python-2.5

我有以下代码

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的新手。提前谢谢(我很确定这是一个新手的错误)

1 个答案:

答案 0 :(得分:2)

ColumnOperators.in_是一个函数,因此必须调用。以下应该工作:

a = session.query(table).filter(table.c.id.in_(['1', '2']))