Лекція 11. Створення веб застосунку за допомогою фреймворку Django

1. Встановлення та основні поняття Django

Встановлення Django:
Для встановлення Django, скористайтеся командою:

pip install django

Перевірка версії:

django-admin --version
Основні поняття Django:

Проект Django: Веб-додаток або набір додатків, які працюють разом. Проект зазвичай містить файли налаштувань, конфігурацію URL та базові налаштування для розробки.

Застосунок Django: Модуль, що виконує певну функцію в рамках проекту (наприклад, обробка користувачів або блоги).Створення проекту:
Щоб створити новий проект Django, використовується команда:

django-admin startproject myproject


Це створить структуру файлів проекту, включаючи:

manage.py — утиліта для керування проектом.

Директорії проекту з файлами налаштувань (наприклад, settings.py, urls.py, wsgi.py).

Структура проекту:

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

Створення застосунку Django
Для створення застосунку в рамках проекту використовується команда:

python manage.py startapp myapp
Ця команда створює основну структуру для застосунку:

myapp/
    __init__.py
    admin.py
    apps.py
    models.py
    tests.py
    views.py


Загальна структура проекту


Налаштуємо відображення.
У файлі myapp/views.py можна додати відображення home.

from django.http import HttpResponse
from django.shortcuts import render

# Create your views here.
def home(request):
    return HttpResponse("Hello, Django!")

Відстежування URL адрес
У файлі myapp/urls.py визначаються URL-шляхи для вашого проекту. Наприклад:

from django.urls import path
from . import views

urlpatterns = [
    path('', views.home, name='home'),
]


Тепер потрібно зареєструвати myapp у myproject
Додамо myapp у файл myproject/settings.py до INSTALLED_APPS

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'myapp',  # Add your app here
]


Додамо myapp/urls до проєкта використовуючи include

"""
URL configuration for myproject project.

The `urlpatterns` list routes URLs to views. For more information please see:
    https://docs.djangoproject.com/en/5.2/topics/http/urls/
Examples:
Function views
    1. Add an import:  from my_app import views
    2. Add a URL to urlpatterns:  path('', views.home, name='home')
Class-based views
    1. Add an import:  from other_app.views import Home
    2. Add a URL to urlpatterns:  path('', Home.as_view(), name='home')
Including another URLconf
    1. Import the include() function: from django.urls import include, path
    2. Add a URL to urlpatterns:  path('blog/', include('blog.urls'))
"""
from django.contrib import admin
from django.urls import include, path

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('myapp.urls')),  # Include your app's URLs
]

Запуск проекту:

python manage.py runserver



Використання шаблонів.

В myapp створемо папку templates та додамо файл  home.html з наступним кодом:

<h1>
  Hello, world!
</h1>

<style>
  h1 {
    color: blue;
  }
</style>

в myapp/views змінемо HttpResponse на функцію render. Функці render використовує шаблони як відповідь на запит з браузера.

from django.http import HttpResponse
from django.shortcuts import render

# Create your views here.
def home(request):
    return render(request, 'home.html')


Тепер результат у браузері буде виглядати так:

Доступність

Шрифти Шрифти

Розмір шрифта Розмір шрифта

1

Колір тексту Колір тексту

Колір тла Колір тла

Кернінг шрифтів Кернінг шрифтів

Видимість картинок Видимість картинок

Інтервал між літерами Інтервал між літерами

0

Висота рядка Висота рядка

1.2

Виділити посилання Виділити посилання