Python django виртуальная среда

Создание проекта в Django

1. Создание и активация виртуальной среды ( virtualenv )

Для разработки на Python рекомендуется сначала создать виртуальную среду для разработки ( virtualenv ). Виртуальная среда — это подраздел системы, в которой устанавливаются пакеты, не зависимо от других пакетов Python. Одним из достоинств виртуальной среды является то, что для установки различных Python пакетов пользователь не обязан иметь права администратора.

Создайте каталог с любым именем для вашего проекта. Перейдите в этот каталог в терминальном режиме. Для удобства я назвал свой проект my_site . Следующей командой создайте виртуальную среду:

my_site> python -m venv ms_env

С помощью команды python -m venv создается виртуальная среда с именем ms_env . После создания её необходимо активировать. Для активации виртуальной среды в системе Windows необходима следующая команда:

my_site> ms_env\Scripts\activate

При работе в консоли появится имя активированной виртуальной среды в скобках (ms_env) . В будущем при активации виртуальной среды любая библиотека Python будет сохранятся в папке ms_env вашего проекта.

Для деактивации виртуальной среды используете команду deactivate:

(ms_env) my_site> deactivate
my_site>

В случае закрытия терминального окна виртуальная среда становится не активной.

2. Установка Django

После создания и активации виртуальной среды установите Django. Установить Django проще всего с помощью менеджера пакетов pip. Pip уже установлен в Python 3.6 и выше.

(ms_env) my_site> pip install django
Collecting django
Downloading Django-3.2.9-py3-none-any.whl (7.9 MB)
|████████████████████████████████| 7.9 MB 656 kB/s
Collecting sqlparse>=0.2.2
Downloading sqlparse-0.4.2-py3-none-any.whl (42 kB)
|████████████████████████████████| 42 kB 203 kB/s
Collecting pytz
Downloading pytz-2021.3-py2.py3-none-any.whl (503 kB)
|████████████████████████████████| 503 kB 3.3 MB/s
Collecting asgiref=3.3.2
Downloading asgiref-3.4.1-py3-none-any.whl (25 kB)
Installing collected packages: sqlparse, pytz, asgiref, django
Successfully installed asgiref-3.4.1 django-3.2.9 pytz-2021.3 sqlparse-0.4.2

Так как вы работаете в виртуальной среде, команда pip install django работает одинаково во всех операционных системах.

3. Создание проекта Django

Для создания проекта Django предоставляет команду, которая создает базовую структуру файлов и каталогов:

(ms_env) my_site> django-admin startproject my_site

С помощью команды django-admin startproject my_site мы создали Django-проект с названием my_site .

Для исключения конфликта имен не используйте названия для ваших проектов, которые совпадают со стандартными пакетами Python и Django.

Давайте посмотрим на структуру сгенерированного проекта:

Читайте также:  Поисковая страница на css

my_site/
manage.py
my_site/
__init__.py
settings.py
urls.py
asgi.py
wsgi.py

Каждый из файлов имеет свое значение:

  • manage.py — утилита командной строки, используемая для управления проектом
  • my_site/ — это внутренняя папка нашего проекта, которая совпадает с названием проекта и содержит файлы:
    • __init__.py — пустой файл, который сообщает Python о том, что my_site является Python-пакетом
    • settings.py — содержит конфигурацию нашего проекта и в нем уже заданы базовые настройки
    • urls.py — здесь будут хранится шаблоны адресов, какие страницы строить на запросы браузера
    • asgi.py — точка входа для ASGI-совместимых веб-серверов для обслуживания вашего проекта
    • wsgi.py — конфигурация для запуска проекта как WSGI — приложения

    Не удаляйте и не изменяйте названия этих файлов в вашем проекте.

    4. Создание базы данных

    Django хранит информацию в базе данных, относящейся к вашему проекту. Для работы с ней её необходимо создать. По умолчанию Django использует СУБД SQLite. Введите команду python manage.py migrate находясь в виртуальной среде для создания базы данных. У меня файл manage.py находится внутри папки my_site , поэтому в начале мне нужно перейти в эту папку командой cd ( cd my_site ).

    (ms_env) my_site> cd my_site

    (ms_env) my_site\my_site> python manage.py migrate
    Operations to perform:
    Apply all migrations: admin, auth, contenttypes, sessions
    Running migrations:
    Applying contenttypes.0001_initial. OK
    Applying auth.0001_initial. OK
    Applying admin.0001_initial. OK
    Applying admin.0002_logentry_remove_auto_add. OK
    Applying admin.0003_logentry_add_action_flag_choices. OK
    .
    Applying auth.0011_update_proxy_permissions. OK
    Applying auth.0012_alter_user_first_name_max_length. OK
    Applying sessions.0001_initial. OK

    Каждое изменение в базе данных называется миграцией. В Django встроена подсистема миграции, которая отслеживает изменения моделей. При первом выполнение команды migrate Django создает новую базу данных за вас и в вашем проекте появится файл db.sqlite3.

    5. Запуск сервера для разработки

    В состав Django входит отладочный веб-сервер для быстрого запуска нашего проекта. Когда сервер запущен, Django начинает отслеживать все наши изменения в коде и автоматически перезапускает его. Запустить сервер разработки можно с помощью команды runserver :

    (ms_env) my_site\my_site> python manage.py runserver
    Watching for file changes with StatReloader
    Performing system checks.

    System check identified no issues (0 silenced).
    November 26, 2021 — 10:09:56
    Django version 3.2.9, using settings ‘my_site.settings’
    Starting development server at http://127.0.0.1:8000/
    Quit the server with CTRL-BREAK.

    Теперь откройте браузер и введите http://127.0.0.1:8000/ . Вы должны увидеть информацию что ваш проект успешно запущен и работает как на рисунке ниже:

    Для завершения работы сервера нажмите Ctrl+C в терминале или просто закройте его.

    6. Настройки проекта Django

    Основные настройки находятся в файле settings.py . Рассмотрим основные настройки, который доступны вам сразу после создания проекта:

    • DEBUG = True — Булевое значение, которое включает и отключает режим отладки проекта. При создание проекта DEBUG = True, значит сайт находится в отладочном режиме и Django будет отображать подробные страницы с вашими ошибками. Когда вы будете устанавливать приложение в «боевом» режиме, нужно установить значение на False. Никогда не публикуйте проект с включенным режимом отладки ( DEBUG = True ), так как пользователям будут доступны секретные данные конфигурации приложения.
    • ALLOWED_HOSTS = [ ] — не используется при включенной отладке и запуске тестов. Но когда вы развернете приложение и установите флаг DEBUG = False, необходимо будет добавить домен сайта в эту настройку.
    • INSTALLED_APPS — список зарегистрированных приложений. Все приложения, которые вы будете писать в будущем, будут добавляться в этот список. По умолчанию Django сразу подключает такие приложения:
      • ‘django.contrib.admin’ — административный веб-сайт Django.
      • ‘django.contrib.auth’ — встроенная подсистема аутентификации.
      • ‘django.contrib.contenttypes’ — подсистема для работы с типами объектов системы. Хранит список всех моделей, объявленных во всех приложения проекта.
      • ‘django.contrib.sessions’ — подсистема сессий.
      • ‘django.contrib.messages’ — подсистема сообщений, выводит всплывающие сообщения.
      • ‘django.contrib.staticfiles’ — подсистема обрабатывает статистические файлы.

      Для удобства разработки изменим код языка для вывода системных сообщений и страниц административного сайта на ‘ru’. Перейдите в файл settings.py и найдите строку:

      Перезапустив сервер, вы увидите сообщение на русском языке:

      В процессе разработки все основные настройки будут рассмотрены.

      Источник

      Активировать виртуальную среду в Django

      Активировать виртуальную среду в Django

      1. Виртуальная среда Python
      2. Настроить виртуальную среду
      3. Создать виртуальную среду
      4. Активировать виртуальную среду

      При работе над проектами Python нам иногда требуется набор библиотек и пакетов. По умолчанию все библиотеки и пакеты, которые мы устанавливаем, установлены для Python, установленного глобально в нашей системе. Иногда это может вызвать несколько проблем.

      Предположим, что в вашей системе глобально установлен Python 3.9, и несколько ваших проектов его используют. Теперь у вас возникла отличная идея и вы начали искать в Интернете все ресурсы, которые понадобятся вам для реализации своей идеи.

      Вы обнаружите, что для вашего проекта вам понадобится библиотека Python XYZ, но при условии, что для работы этой библиотеки требуется Python 3.6. Но на вашем компьютере установлен Python 3.9, и его удаление приведет к поломке всех остальных проектов. Кроме того, вы не можете отказаться от идеи и начать воплощать идеи в жизнь на основе версии Python, установленной на вашем компьютере.

      Итак, чтобы избежать таких конфликтов, используются виртуальные среды.

      Виртуальная среда Python

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

      При запуске нового проекта всегда рекомендуется создавать виртуальную среду и использовать ее специально для этого проекта.

      Настроить виртуальную среду

      Создать виртуальную среду для ваших проектов Python несложно. Для создания виртуальной среды нам понадобится пакет Python, а именно virtualenv . Этот пакет можно установить с помощью следующей команды pip .

      Создать виртуальную среду

      Чтобы создать виртуальную среду, выполните в консоли следующую команду.

      environment — это имя виртуальной среды. Вы можете дать ему любое имя. По умолчанию версия этой среды для Python будет такой же, как версия Python, установленная глобально на вашем компьютере или в верхней части переменных среды, если у вас несколько версий Python.

      Чтобы создать среду с пользовательской версией Python, используйте следующую команду. Убедитесь, что на вашем компьютере установлена ​​эта версия Python. В противном случае выдаст ошибку.

      virtualenv --python=\path\to\the\python\version\python.exe environment 

      Итак, если у вас есть Python 3.9 и 3.7 на вашем компьютере и вы хотите создать среду с Python 3.7 в Windows, ваша команда будет выглядеть так. (Учитывая расположение Python по умолчанию)

      virtualenv --python=C:\Users\User-Name\AppData\Local\Programs\Python\Python37\python.exe environment 

      Активировать виртуальную среду

      Перед активацией среды убедитесь, что в рабочем каталоге консоли есть виртуальная среда.

      Чтобы активировать виртуальную среду в Windows, используйте следующую команду.

      environment\Scripts\activate 

      Для Mac и Linux используйте следующую команду.

      source environment/bin/activate 

      Чтобы деактивировать виртуальную среду, выполните следующую команду.

      Vaibhav is an artificial intelligence and cloud computing stan. He likes to build end-to-end full-stack web and mobile applications. Besides computer science and technology, he loves playing cricket and badminton, going on bike rides, and doodling.

      Источник

Оцените статью