Was ist der Unterschied zwischen Model.query und session.query (Model) in SQLAlchemy?

Ich bin ein Anfänger in SQLAlchemy und die Abfrage kann auf zwei Arten durchgeführt werden:

Ansatz 1:

DBSession = scoped_session(sessionmaker())
class _Base(object):
    query = DBSession.query_property()

Base = declarative_base(cls=_Base)

class SomeModel(Base):
    key   = Column(Unicode, primary_key=True)
    value = Column(Unicode)

# When querying
result = SomeModel.query.filter(...)

Ansatz 2

DBSession = scoped_session(sessionmaker())
Base = declarative_base()

class SomeModel(Base):
    key   = Column(Unicode, primary_key=True)
    value = Column(Unicode)

# When querying
session = DBSession()
result = session.query(SomeModel).filter(...)

Gibt es einen Unterschied zwischen ihnen?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage