1

私は次のコードを持っています

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を初めて使用するので、これは私が間違っていることだと確信しています。よろしくお願いします(新人の間違いだと思います)

4

1 に答える 1

2

ColumnOperators.in_は関数であるため、呼び出す必要があります。以下が機能するはずです:

a = session.query(table).filter(table.c.id.in_(['1', '2']))
于 2012-07-23T12:36:06.900 に答える