Учим работать VS Code с Django

Oleg Puzanov
Mad Devs — блог об IT
2 min readMar 15, 2018

Помимо того, что VS Code не умеет работать с удаленным интерпретатором Питона (чтобы можно было кодить в Докере на 100%), он еще не умеет из коробки линтить проект на Джанге. Особенно, если у вас джанговский код находится не в корне воркспейса, а где-то во внутренней папочке.

В этом случае pylint начинает ругаться на то, что не может найти внутренние джанговские модели и апликейшены:

И вроде хотелось нажаловаться опять на VS Code, но в последствии стало ясно, что это фича линтера.

Итак, после долгих гуглений и чтений доки, можно собрать воедино весь список вещей, которые надо сделать, чтобы все работало отлично:

  1. Нужно объяснить линтеру pylint где у него корень проекта. Делается это странным образом, через переменную окружения с названием, которое совершенно сбивает с толку: PYTHONPATH. Таким образом в корень воркспейса кидаем файл .env и прописываем там PYTHONPATH=./папка с вашей Джангой. VS Code подхватит файл .env и закинет его содержимое в переменные окружения.
  2. Оказывается Джанга — сложный для простого анализа проект. И у pylint есть специальный плагин для линтинга Джанги: pylint-django. Во-первых вы должны установить его внутри вашего virtualenv или другом месте, откуда вы цепляете интерпретатор Питона: pip install pylint-django. Во вторых, нужно объяснить VS Code, чтобы он подрубал этот плагин для pylint. Делается это в кастомных сеттингах вот так:

--

--