Я использую Pylance (с подсказками типов на базе PyRight) в VSCode и имею следующую функцию:
Код: Выделить всё
def sample(session: sqlalchemy.orm.Session) -> sqlalchemy.orm.query.Query:
return session.query((MyModel)
Понятно, почему я получаю эту ошибку, но похоже, что она должна быть какой-нибудь способ заставить это работать, иначе Пайланс просто насмехается надо мной. Я нашел один обходной путь (который действительно работает):
Код: Выделить всё
def sample(session: sqlalchemy.orm.Session) -> (
sqlalchemy.orm.query.Query[MyModel]
if typing.TYPE_CHECKING
else sqlalchemy.orm.query.Query
):
return session.query(MyModel)
Подробнее здесь: https://stackoverflow.com/questions/702 ... my-queries