PyCharm Professional Edition очень мощная IDE для Python. IDE замечательно работает "из коробки", но если её слегка настроить, то она будет еще удобнее. Статья не претендует на лучшую в своем роде, я просто расскажу как я настраиваю IDE для себя на MacOS.
Интеграция с GitHub
Интеграция с GitHub (если вы используете этот сервис) позволит выполнять большинство рутинных операция прямо в IDE. Чтобы провести интеграцию, необходимо в окне Preferences найти Version Control → GitHub и там нажать на плюсик и выбрать Log In with Token. У вас выскочит такое окошко
Жмите Generate и вас перекинет на github.com в раздел создания токена. Настройки выставятся автоматом (но вы можете выбрать и другие), нужно будет только поменять название (по желанию) и выставить дату. Токен не закончится внезапно, GitHub предложит продлить его и вам не надо будет повторять эту процедуру (нужно будет просто нажать на специальную кнопку на сайте; Github подскажет), т.к. токен уже в вашей IDE.
Если всё выставили, жмите зеленую кнопку Generate Token и затем копируйте его.
Свежий токен вставляйте в окно PyCharm и жмите Add Account. В окне настроек появится ваш аккаунт.
Клонирование проекта с GitHub
Когда настроена интеграция, то клонировать проект с GitHub проще простого! В меню нужно открыть пункт Git → Clone (или кнопку Get from VCS, если у вас открыто главное окно IDE), выбирайте нужный репозиторий и жмите Clone.
Настройка Virtual Environment
Если вы клонировали репозиторий в котором нет файла requirements.txt, или просто создали проект локально, то у вас не создается Virtual Environment. Тем не менее, создать его не составит труда: в нижней части экрана у вас будете отображаться системная версия Python. У меня это Python 2.7.
Для создания виртуальной среды нужно кликнуть на Python 2.7 и нажать Add Interpreter. В открывшемся окне необходимо сделать (вообще-то почти ничего делать не надо, оно само...) все как на скриншоте ниже, а именно:
- Выбрать New environment
- Задать нужный путь (папка проект\venv)
- Выбрать нужную вам версию Python
- Нажать OK
После этих простых манипуляций внизу окна, вместо Python 2.7, появится надпись Python 3.7 (project-name).
Что нам это дает? При открытии терминала в IDE у вас будет автоматически запускаться терминал в виртуальной среде.
Но если у вас в репозитории есть файл requirements.txt, то PyCharm после клонирования запустит диалоговое окно для создания Virtual Environment, где нужно просто убедится, что venv будет создан в нужном вам месте и правильно выбраны интерпретатор и файл с зависимостями requirements.txt.

Как только нажмёте кнопку OK, PyCharm запустит аналоги следующих команд:
% python3.7 -m venv venv
% source venv/bin/activate
% pip install -r requirements.txt
Готово! Папка venv создана, зависимости установлены
Настройка Code Style
PyCharm любит PEP8, но не всегда следует. В настройках можно найти Code Style (кстати, поиск по настройкам замечательно работает) и поменять ограничение по длине строки. Справа сразу можно видеть превью кода, что очень удобно во время настройки :)
Если залезть в пункт Scheme, то можно выбрать для чего вы меняете настройки: для проекта или всей IDE. Это очень удобно, когда для разных проектов разные требования по оформлению.
Чтобы настроить форматирование шаблонов для Django, надо залезть в настройки HTML. Все остальные настройки меня вполне устраивают :)
Интеграция с Django
Для интеграции с Django много не нужно. Сперва необходимо дать знать IDE, что наш проект - это Django. Делаем как на скриншоте: выбираем путь к корневой папке проекта (там где лежит manage.py) и указываем файл settings.py и manage.py (все пути должны быть относительно Django project root)
Затем можно сказать IDE какие папки за что отвечают. И тогда PyCharm не будет искать где у вас корень проекта, статика, тесты или шаблоны, а сразу будет знать куда смотреть. Помогите IDE и она поможет вам в работе :)
Делается это так: жмём правой кнопкой на нужную папку и выбираем пункт меню Mark Directory as. А далее тот подпункт, который соответствует выбранной папке:
- Source Root для корневой папки проекта
- Excluded для папок, в которые PyCharm не должен смотреть (индексация, поиск и т.д.)
- Test Source Root для папок с тестами
- Resource Root для папки со статикой
- Template Folder для папки с шаблонами
В итоге должно получится нечто такое:
Конфигурации для запуска Django Server, Django Test
В этом разделе мы ускоряем процесс запуска тестов и dev-сервера. Да, я ленив и запускать dev-сервер и тесты консольной командой не мой случай. PyCharm придумали тоже ленивые ребята, поэтому они сделали возможность добавления различных конфигураций запуска.
Тыкаем на Add configuration в верхней части окна и далее на Add new
Там выбираем Django Server. В Name пишем понятное название, в поле Host указываем IP-адрес, в поле Port - порт. Все остальное не обязательно.
Тут же жмём на "+" и добавляем конфигурацию Django test - там вообще ничего не надо настраивать - все само.
После жмём ОК и запускаем выбранную конфигурацию с помощью горячих клавиш (для MacOS это control + R). В случае с сервером это просто удобно, а с тестами - очень удобно! IDE подсвечивает каждый тест, который не сработал и так намного проще работать. Результат на скрине ниже:
С помощью кнопки "1" можно запустить заново все тесты, а с помощью кнопки "2" - только те тесты в которых ошибка. "Удобно" - не то слово
Это тот минимум настроек, который позволяет мне работать с проектами немного быстрее. Статья будет дополняться :)