Избегайте предупреждения PyCharm при связывании методов подкласса Django QuerySet - PullRequest
0 голосов
/ 07 апреля 2020

Рассмотрим следующий пример кода:

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 обычно не жалуется на то, чего не может сделать вывод.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...