На минулому рівні ми вже встигли познайомитися з концепцією віртуальних оточень і розібралися, чому вони такі важливі в Python-розробці. Пам'ятаєш нашу аналогію з кухнею, де кожен проєкт отримує свій набір "інгредієнтів"? Сьогодні ми підемо далі і навчимося використовувати ці "кухні" на практиці, особливо в контексті Django-розробки.
Коротке нагадування
Давайте швидко освіжимо ключові моменти:
- Віртуальне середовище — це ізольований простір для проєкту
- Воно дозволяє уникнути конфліктів між версіями бібліотек
- Створюється командою
python -m venv venv - Активується через
source venv/bin/activate(Linux/macOS) абоvenv\Scripts\activate(Windows)
Якщо ці концепції здаються не зовсім зрозумілими, рекомендую повернутися до матеріалів четвертої лекції. А зараз рухаємось далі і розбираємо, як використовувати віртуальні середовища в реальній розробці.
Структура віртуального оточення — зазираємо під капот
Коли ми створюємо віртуальне оточення командою python -m venv venv, Python створює для нас цілу структуру папок і файлів. Давай розберемося, що там всередині — це допоможе краще зрозуміти, як все працює.
Після створення оточення ти побачиш приблизно таку структуру:
venv/
├── Include/
├── Lib/
│ └── site-packages/
├── Scripts/ (або bin/ на Linux/macOS)
└── pyvenv.cfg
Виглядає загадково? Давай розберемо кожен елемент:
Папка site-packages — твоя книжкова шафа
Це найважливіша папка у віртуальному оточенні. Саме сюди будуть встановлюватися всі бібліотеки, включаючи Django. Можеш вважати її книжковою шафою, де кожна книга — це окрема бібліотека. Коли на наступній лекції ми будемо встановлювати Django через pip, він з'явиться саме тут.
Scripts (або bin) — твої інструменти
Тут зберігаються виконувані файли, включаючи сам Python та різні утиліти. Пам'ятаєш команду активації оточення? Вона знаходиться саме у цій папці. На Windows це Scripts, а на Linux і macOS — bin, але суть та ж сама.
pyvenv.cfg — файл налаштувань
Цей файл містить базові налаштування твого оточення, включаючи шлях до Python та версію. Зазвичай тобі не доведеться редагувати його вручну, але знати про його існування корисно.
Тепер, коли ми знаємо структуру оточення, стає зрозуміліше, чому активація так важлива — вона налаштовує Python на використання саме цих папок замість системних. У наступному розділі ми розглянемо, як це знання знадобиться нам при роботі з Django-проєктами.
Просунуті сценарії використання
Тепер, коли ми розібралися з базовою структурою, давайте подивимося на типові сценарії, з якими ти зіткнешся під час розробки Django-проєктів.
Різні версії Python для різних проєктів
Уяви, що ти працюєш над двома проєктами:
- Старий корпоративний сайт на Django 2.2 (потребує Python 3.7)
- Новий стартап на Django 5.0 (потрібен Python 3.10 або вище)
Що робити? Віртуальні оточення поспішають на допомогу! Під час створення оточення ти можеш вказати, яку версію Python використовувати:
python3.7 -m venv legacy_project
python3.10 -m venv new_project
Тестове і продакшн оточення
У реальній розробці часто потрібні різні набори бібліотек для:
- Розробки (з інструментами налагодження)
- Тестування (з пакетами для тестів)
- Продакшена (тільки необхідний мінімум)
Рішення? Створюємо різні оточення:
# Для розробки
python -m venv venv_dev
# Для тестування
python -m venv venv_test
# Для продакшена
python -m venv venv_prod
Кожне оточення матиме свій набір залежностей, який ми навчимося налаштовувати в наступній лекції про pip і requirements.txt.
Налагодження проблем з оточенням
Іноді щось іде не так. Ось часті проблеми та їх рішення:
"Не бачить Django після встановлення?"
- Перевір, чи активоване оточення (має бути префікс у командному рядку)
- Подивись вміст site-packages
"Конфлікти версій?"
- Перевір
pyvenv.cfg— чи та версія Python використовується - Створи нове оточення з потрібною версією
У наступній лекції ми детально розберемо, як встановлювати і керувати пакетами в цих оточеннях за допомогою pip. А поки — потренуйся у створенні різних оточень для різних задач!
Інтеграція з IDE — робимо роботу зручнішою
Хоча ми можемо керувати віртуальними оточеннями через командний рядок, сучасні IDE (редактори коду) роблять цю роботу набагато приємнішою. Давай подивимось, як налаштувати популярні редактори для роботи з Django-проєктами.
PyCharm — усе з коробки
PyCharm особливо гарний для Django-розробки — він одразу розуміє віртуальні оточення:
Створюємо новий проєкт:
- PyCharm запропонує створити нове віртуальне оточення
- Одразу покаже, які пакети встановлені
- Допоможе встановити Django
Для існуючого проєкту:
- Відкрийте папку проєкту
File → Settings → Project → Python Interpreter- Виберіть існуюче оточення або створіть нове
VSCode — налаштовуємо на свій смак
Visual Studio Code теж чудово працює з Python, але потребує невеликого налаштування:
- Встановіть розширення Python
- Відкрийте папку проєкту
- Натисніть
Ctrl+Shift+P(абоCmd+Shift+Pна macOS) - Виберіть "Python: Select Interpreter"
- Вкажіть шлях до Python із вашого віртуального оточення
Після цього VSCode буде:
- Підсвічувати доступні пакети
- Пропонувати автодоповнення коду Django
- Показувати помилки в реальному часі
Підказки для зручної роботи
Автоактивація оточення
// .vscode/settings.json { "python.terminal.activateEnvironment": true }Інтеграція з терміналом
- IDE автоматично активує оточення у вбудованому терміналі
- Ви одразу бачите, які пакети доступні
- Команди Django (
python manage.py) працюють з коробки
Тепер ваше середовище розробки повністю готове до роботи з Django! На наступній лекції ми почнемо встановлення всіх необхідних пакетів через pip та створимо наш перший Django-проєкт у правильно налаштованому оточенні.
Підготовка до встановлення Django — що далі?
Тепер, коли у нас є налаштоване віртуальне оточення та зручне середовище розробки, час готуватися до наступного важливого кроку — встановлення Django та інших необхідних пакетів.
Невелике попереднє завдання
Щоб бути готовими до наступної лекції, перевірте:
Активоване ваше віртуальне оточення:
# Повинні побачити (venv) на початку рядка (venv) user@computer:~/project$Чи працює pip:
pip --versionСтворіть тестовий проєкт:
mkdir django_test cd django_test python -m venv venv
Якщо щось не працює — поверніться до матеріалів цієї лекції. Усі проблеми з віртуальним оточенням краще вирішити зараз, щоб на наступному занятті зосередитися на встановленні та налаштуванні Django.
Від теорії до практики
У наступній лекції ти побачиш, як усі ці підготовчі кроки з віртуальним середовищем допомагають організувати чисте та зручне середовище розробки.
Пам'ятаєш наше порівняння з кухнею? Тепер у тебе є своя, чиста й організована кухня. Залишилося тільки закупити потрібні інгредієнти (пакети) і почати готувати (розробляти). До зустрічі на наступній лекції!
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ