Ура, второй пост в истории 🥳 (это вроде как заняло у меня целых 2 месяца, но это k)
Итак, сейчас мы занимаемся Джанго. Почему? Потому что мне больше нравится Python.
Итак, что такое Django? Более простой Spring Boot. Вот и все. Он делает то же самое, что и Spring, но, и это мое личное мнение, гораздо проще понять, что с ним происходит.
Итак, давайте начнем с самого начала, как нам запустить новый проект с помощью Django? Я предполагаю, что у нас уже установлен Django, поэтому откройте окно терминала в выбранной директории и введите:
django-admin startproject your_project_name_goes_in_here_okay
¹: Обратите внимание, что вы не можете использовать тире (-) для разделения слов в названии проекта, поэтому просто используйте подчеркивание.
Как только мы это сделаем, Django создаст папку с именем нашего проекта и все необходимые файлы для запуска вашего проекта².
²: Проект — это что-то вроде веб-сайта, проект в Django, как правило, состоит из множества различных приложений, а приложение — это конкретная функция веб-сайта. Подумайте о сайте MMORPG, наш проект будет сайтом в целом, а наши приложения будут чем-то вроде форума, раздела новостей и тому подобного.
Это должно выглядеть примерно так:
my_project
├── my_project
│ ├── __init.py__
│ ├── asgi.py
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
└── manage.py
- Просмотров
URL отвечают за адреса, которые мы хотим поддерживать, чтобы они были доступны на нашем сайте/web-приложениях. В Django представление представляет собой функцию или класс, который будет обрабатывать логику, выполняемую при обращении к определенному URL. Это представление будет обрабатывать конкретный запрос (GET, POST, DELETE, PUT,…) и затем возвращать подходящий ответ для этого запроса. Типичное представление делает такие вещи, как: загрузка и обработка данных, выполнение некоторой бизнес-логики, а затем возвращает ответные данные, например, HTML-код.
Итак, давайте напишем наше первое представление:
-
Сначала мы создадим новое приложение:
-
Переходим в new_app > views.py
Вот так, теперь мы создали представление в нашем приложении new_app.
Но теперь, как нам сделать так, чтобы Django знал, что мы хотим вернуть это представление после получения запроса? Мы должны сделать так, чтобы Django знал, какой URL должен возвращать нашу функцию index(request)
.
Мы просто создадим новый python файл urls.py
в папке new_app.
my_project
├── my_project
│ ├── __init.py__
│ ├── asgi.py
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
├── my_app
│ ├── migrations
│ ├── __init.py__
│ ├── admin.py
│ ├── apps.py
│ ├── models.py
│ ├── urls.py
│ ├── tests.py
│ └── views.py
└── manage.py
³: Обратите внимание, что у нас есть два разных файла urls.py
один для нашего приложения, а другой для всего проекта.
Внутри urls.py
нашего вновь созданного приложения (my_app > urls.py) мы укажем Django, какая ссылка будет обращаться к нашей функции представления.
Но сейчас только наше приложение знает о существовании этих URL и представлений, поэтому мы должны сделать так, чтобы весь проект тоже знал о них, поэтому мы зайдем в urls.py
нашего проекта (my_project > urls.py) и скажем Django, что у нас есть все это приложение, как показано ниже:
Итак, если мы знаем, что запустим наш сервер, перейдя в окно терминала и набрав:
py manage.py runserver
и отправимся по адресу http://127.0.0.1:8000/my_app/
.
Нас должно встретить красивое сообщение, говорящее:
Hello, world. Вы находитесь в индексе new_app.
И это хорошее место, чтобы остановиться на сегодня.
И вот как мы создаем представление внутри нашего приложения