Настройка удаленного интерпретатора на Pycharm для Django

в 11:12, , рубрики: django, pycharm, python, отладка, метки: , ,

Настройка удаленного интерпретатора на Pycharm для Django
В этой статье хочу рассказать, а также показать настройку полезного инструмента для удаленной разработки от компании JetBrains встроенное в IDE Pycharm. Такой инструмент есть уже давно, но многие разработчики относятся к этому не серьезно, и для внесения изменений в проект предпочитают разворачивать его локально. Когда намного легче на том-же сервере, сделать копию части проекта и изменять или тестировать на другом порту с помощью встроенных средств удаленного интерпретатора Pycharm. Конечно не во всех ситуациях это хороший вариант, но для правки, и доработки небольших проектов очень даже подходит. А если проект с нуля, то создавая его на удаленном сервере, исчезает потребность в переносе и адаптации его под сервер(хостинг), которые неизбежно ведут к появлению множества багов и несовместимостей.

К тому же такой подход нас избавляет от таких проблем:

• на разных серверах свой Unix и свои приколы, разворачивать локально и подгонять среду под особенности того или иного сервера может занять приличное количество времени;
• разные версии python;
• И если в файле req.txt для Django не указаны все зависимости;
и т.д.

Процесс настройки удаленного интерпретатора Pycharm для Django

Идем в file-> settings-> deployment

Настройка удаленного интерпретатора на Pycharm для Django

Вводим настройки подключения сервера, у кого какое (SFTP, FTP, и т.д.). В поле «root path» – нужно указать путь к папке с проектами. Во вкладке «Mapping» в поле «Deployment path on server» необходимо указать путь от «root path» к папке с проектом.

Настройка удаленного интерпретатора на Pycharm для Django

К примеру:
«root path» = /data/python
«Deployment path on server» = /project
Под deployment есть options, в них полезно выставить выгрузку файлов на сервер по горячим клавишам, например, ctrl+s и другие настройки.

Подготовка закончена, переходим соответственно к самой настройки удаленного интерпретатора.

Настройка удаленного интерпретатора на Pycharm для Django

Настройка интерпретатора не сильно отличается от настройки deployment (кнопкой «Fill from deployment server settings» можно заполнить часть настроек). Нажимаем «Configure Interpreters», выбираем remote, или если уже какой-то был создан, то с помощью плюсика. Далее необходимо указать путь к интерпретатору python на сервере. После нажимаем «ok» и немного подождать пока Pycharm скачает (создаст) образ skeleton python в месте с приложениями которые были установлены через pip или подобное ему, что очень удобно, в последствии можно спокойно переходить к этим файлам из кода!

Следующим шагом будет настройка запуска Django сервера используя средства Pycharm для разработки.

Настройка удаленного интерпретатора на Pycharm для Django

В инструментах с права выбираем «Edit configuration»

Настройка удаленного интерпретатора на Pycharm для Django

В появившемся окне вводим «host» 0.0.0.0 для того что бы с любого ip принимал вызовы и «port» который у Вас является свободным на сервере. Выбираете удаленный интерпретатор в поле «Python interpreter», который настроили раннее. В поле «Environment variables» необходимо указать переменную «DJANGO_SETTINGS_MODULE» и ее значение, состоящее из названия главного приложения Django и файла с настройками в нем.

Настройка удаленного интерпретатора на Pycharm для Django

На этом настройка удаленного интерпретатора завершена, для его запуска можно воспользоваться кнопкой на панели инструментов с права.

Настройка удаленного интерпретатора на Pycharm для Django

После с низу появится окно логов сервера со всевозможными инструментами.

Настройка удаленного интерпретатора на Pycharm для Django

Стоит отметить что помимо удаленной отладки в Pycharm встроили очень полезные инструменты(menu-> tools): SSH-клиент, Django-console, Python-console, Debug, и прочие.

На скриншоте ниже Django console и SSH-клиент в режиме сплит.

Настройка удаленного интерпретатора на Pycharm для Django

Заключение
Способ разработки (отладки), который был представлен выше, по сути является попыткой выхода на новый уровень. Развертывание разработки на локали – это как запатентованный проверенный способ, ну а описанный выше является новым подходом, и никто не гарантирует его поддержку, хотя JetBrains стараются, но как известно первые всегда набивают шишки. Удачи.

P. S.
Так же при настройке удаленного интерпретатора можно использовать virtualenv, где при разработке или доработке проекта можно проводить абсолютно независимые тесты и не влиять на сервер, но это отдельная тема.

Автор: gangreyw

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js