Встановлення Django
# Встановлення Django
pip install django
# Або
pip install django==5.1
# Або
pip install "django>=3.2,<4.0"Для перевірки успішного встановлення виконайте:
python -m django --version
Створення проєкту Django
Для створення проєкту використовується команда django-admin startproject. Ця команда створює базову структуру каталогів і файлів, необхідних для початку роботи.
# Активуйте віртуальне оточення!
## На Windows
venv\Scripts\activate
## На macOS/Linux
source venv/bin/activate
# Створення нового проєкту з ім’ям myproject (можете обрати будь-яке інше ім’я)
django-admin startproject mysite
django-admin – це утиліта командного рядка, яка поставляється разом з Django. Вона надає різноманітні команди для управління вашим проєктом, і startproject – лише одна з них.
З'явиться тека mysite з вістом:
mysite/
manage.py
mysite/
__init__.py
settings.py
urls.py
asgi.py
wsgi.pyПояснення файлів та папок
- mysite/: коренева папка проєкту.
- manage.py: головний скрипт для керування проєктом. З його допомогою ми будемо запускати сервер, створювати додатки, виконувати міграції та багато іншого.
- mysite/ (вкладена папка): тут знаходиться конфігурація проєкту.
- init.py: порожній файл, який вказує Python, що ця папка — модуль.
- settings.py: головний файл налаштувань проєкту. Саме тут ми будемо вказувати базу даних, підключати додатки, налаштовувати статичні файли та багато іншого.
- urls.py: файл маршрутів. У ньому будемо зв'язувати URL-адреси з їх обробниками (представленнями).
- asgi.py: налаштування для асинхронного інтерфейсу сервера та додатків (ASGI). Це потрібно для роботи з асинхронними запитами.
- wsgi.py: налаштування для інтерфейсу сервера та додатків (WSGI). Це стандарт для розгортання Django-додатків на продакшені.
Перевірка працездатності проєкту
Використовуй наступну команду:
# Переконайтесь, що ви знаходитесь у кореневій директорії проєкту
#(де знаходиться manage.py) та що віртуальне оточення активоване!
python manage.py runserver
# Запуск сервера на порту 8080
python manage.py runserver 8080
# Запуск сервера на порту 9000 та прив'язка до IP-адреси 0.0.0.0
# (сервер буде доступний для інших пристроїв у локальній мережі)
python manage.py runserver 0.0.0.0:9000Після цього у терміналі ти побачиш щось типу:
Watching for file changes with StatReloader
Performing system checks...
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.Тепер відкрий браузер і перейди за адресою http://127.0.0.1:8000/. Якщо все пройшло успішно, ти побачиш стандартну сторінку привітання Django зі словами "The install worked successfully! Congratulations!"
Робота з manage.py
manage.py — це наш "швейцарський ніж" для керування проєктом. Ось кілька корисних команд, які тобі знадобляться на початковому етапі:
- startproject <ім’я_проєкту>: створює новий проєкт Django.
- runserver: запускає сервер розробки.
python manage.py runserver
python manage.py runserver 8080 # Запустить сервер на порту 8080
python manage.py runserver 0.0.0.0:8000 # Відкрити сервер для підключення ззовні- startapp <ім’я_додатку>: створює новий додаток (майже як startproject, але для додатків).
python manage.py startapp blog- shell: відкриває інтерактивний Python-інтерпретатор із попередньо завантаженими налаштуваннями проєкту.
- help [команда]: виводить довідку по командам.
- createsuperuser: створити адміністратора.
python manage.py createsuperuser --username admin --email admin@gmail.com- makemigrations [ім’я_додатку]: створює нові міграції на основі змін у моделях.
python manage.py makemigrations- migrate [ім’я_додатку] [номер_міграції]: застосовує невиконані міграції до бази даних або відміняє міграції
python manage.py migrate
# Скасувати всі міграції додатку blog
python manage.py migrate blog zero
# Скасувати додаток blog до міграції 0001
python manage.py migrate blog 0001- showmigrations [ім’я_додатку]: показує список міграцій.
python manage.py showmigrations- sqlmigrate <ім’я_додатку> <номер_міграції>: показує SQL-код для міграції.
python manage.py sqlmigrate app_name 0002- test: запуск тестів
- check: перевіряє налаштування вашого проєкту на наявність потенційних помилок.
- collectstatic: коли ваш проєкт готовий до публікації, вам потрібно зібрати всі статичні файли (CSS, JS, зображення) в одному місці.
Змінення структури (не обовязково)
Перейменувати папки щоб отримати таку сткуру.
src/
manage.py
core/
__init__.py
settings.py
urls.py
asgi.py
wsgi.pyВнести зміни в файли. замінити назву проекта яку вказували про створені прокта в команді django-admin startproject mysite на core:
- settings.py
- manage.py
- asgi.py
- wsgi.py