Рассмотрим следующий пример кода:
class MyQuerySet(models.QuerySet):
def my_method(self):
return self.annotate(_something=47)
def my_method_2(self):
return self.annotate(_something2=42)
def second_method(self):
return self.my_method().my_method2()
Проблема в том, что PyCharm s проверка типов выделяет my_method2()
call (" Неразрешенная ссылка на атрибут" my_method2 "для класса" QuerySet ' ", строгое предупреждение). Я мог бы отключить предупреждение внутри IDE в каждом конкретном случае, но это звучит неправильно.
Это только ошибка в IDE, или есть какой-то способ аннотировать код так, чтобы PyCharm поймет, что мои методы возвращают MyQuerySet
так что все в порядке? PyCharm обычно не жалуется на то, чего не может сделать вывод.