Конфликт библиотеки argparse между Django и Google Cloud SDK - как разрешить - PullRequest
0 голосов
/ 19 марта 2020

Я пытаюсь запустить мое приложение Django в PyCharm и получаю следующую ошибку:

TypeError: __init__() got an unexpected keyword argument 'allow_abbrev'

(Это происходит только тогда, когда я запускаю его из меню «Выполнить» в PyCharm, а не из терминал).

Ошибка исходит от django.core.management.base.py. Класс CommandParser там наследуется от ArgumentParser, но интерпретатор смешивает стандарт from argparse import ArgumentParser, который имеет ключевое слово аргумент allow_abbrev, с ArgumentParser в Google Cloud SDK, который не аргумент allow_abbrev.

Google Cloud SDK ArgumentParser, на который ссылается переводчик, отсутствует даже в каталоге моего проекта.

Я полагаю, это началось только тогда, когда я обновил Google Инструменты Cloud SDK.

Я работаю в виртуальной среде с последней версией Python, но меня смущает вопрос о том, как она набирает ArgumentParser от Google вместо ожидаемой Django.

Я действительно не знаю, как воспроизвести это, но это какая-то проблема PyCharm- Django -Google, которая возникает из-за ниже:

  • Настройка конфигурации запуска в PyCharm запустить python manage.py runserver 'с Python 3 venv интерпретатором
  • Установить последние инструменты Google Cloud SDK

Скорее всего, что-то странное в PyCharm запустить конфигурацию , как я уже сказал.

1 Ответ

0 голосов
/ 23 марта 2020

В конце концов я удалил папку .idea в PyCharm и снова открыл проект. PyCharm воссоздал папку, и приложение, наконец, запустилось без проблем. Похоже, это была проблема с настройкой PyCharm, но ничего очевидного, что я мог видеть на поверхности.

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