JavaRush /Курсы /Модуль 3: Django /Установка Django REST Framework и настройка проекта

Установка Django REST Framework и настройка проекта

Модуль 3: Django
16 уровень , 1 лекция
Открыта

На прошлой лекции мы узнали о существовании Django REST Framework (DRF), библиотеки для создания REST API на базе Django. Она существенно упрощает нам жизнь в аспектах, связанных с реализацией функциональности API.
С DRF ваш API будет не только функциональным, но и "красивым" — встроенная документация и пользовательский интерфейс

для тестирования запросов идут прямо из коробки! Давайте установим и настроим этот полезный инструмент.

Шаг 1: требования к установке DRF

Перед установкой убедимся, что наша среда готова к работе с Django REST Framework:

  1. Python: убедитесь, что установлен Python версии 3.6 или выше. DRF любит современный Python, так что старика Python 2 сюда уже не берём.
  2. Django: на момент подготовки этой лекции, DRF поддерживает Django 3.2 и выше. Убедитесь, что у вас установлена одна из совместимых версий.

Всё на месте? Поехали дальше.

Шаг 2: Установка Django REST Framework

Мы будем использовать pip, чтобы не заниматься ручной магией в консоли:

# Устанавливаем DRF с помощью pip
pip install djangorestframework

Если хотите проверить текущую версию установленного DRF, введите:

python -m pip show djangorestframework

Должно появиться что-то вроде:

Name: djangorestframework
Version: <версия>
Summary: Web APIs for Django.

🎉 DRF установлен? Отлично! Но подождите, это ещё не всё.

Шаг 3: Настройка проекта для работы с DRF

Установка — дело десяти секунд, а вот настройка — уже более тонкое искусство. Давайте сделаем всё правильно и структурированно.

  1. Подключение DRF к проекту

Для начала убедитесь, что наш проект "знает" о существовании DRF. Зайдите в файл settings.py вашего Django проекта и добавьте 'rest_framework' в список приложений INSTALLED_APPS:

INSTALLED_APPS = [
    # Системные и базовые приложения Django
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',

    # Приложение DRF
    'rest_framework',
]
  1. Добавляем настройки DRF (опционально)

DRF предоставляет возможность тонкой конфигурации через параметры в settings.py. Пока что мы добавим базовую настройку, которая пригодится в будущем:

REST_FRAMEWORK = {
    # Настройки аутентификации можно будет менять в будущем
    'DEFAULT_AUTHENTICATION_CLASSES': [
        'rest_framework.authentication.SessionAuthentication',
        'rest_framework.authentication.BasicAuthentication',
    ],

    # Настройки разрешений (доступа)
    'DEFAULT_PERMISSION_CLASSES': [
        'rest_framework.permissions.AllowAny',  # Пока что, разрешаем доступ всем
    ]
}
Подсказка:

эти параметры особенно важны, когда вы будете разрабатывать сложные системы с ограничением доступа. Пока оставим всё максимально простым.

Шаг 4: Проверка установки

Чтобы убедиться, что DRF настроен правильно, мы создадим минимальный набросок API, который вернёт нам какие-нибудь данные. Это займет всего пару минут!

Пример простого API

Создайте новый файл views.py в одном из ваших приложений с примером простого представления:

from django.http import JsonResponse

def example_api_view(request):
    return JsonResponse({"message": "Hello, Django REST Framework!"})

Теперь добавьте маршрут для этого представления в urls.py:

from django.contrib import admin
from django.urls import path
from .views import example_api_view  # Импортируем наше представление

urlpatterns = [
    path('admin/', admin.site.urls),
    path('api/example/', example_api_view),  # Регистрируем наш API-эндпоинт
]

Запустите сервер:

python manage.py runserver

Если вы перейдёте на http://127.0.0.1:8000/api/example/, вы должны увидеть:

{"message": "Hello, Django REST Framework!"}

Ну как вам? DRF уже позволяет вам создавать API даже без особых усилий.

Типичные ошибки при установке и настройке DRF

Работая с DRF впервые, можно наткнуться на ряд "граблей". Вот самые популярные из них:

  1. Ошибка "Module not found" при добавлении 'restframework' в INSTALLEDAPPS: это значит, что DRF не был установлен. Убедитесь, что вы действительно установили его через pip install djangorestframework.

  2. Ошибка при импорте JsonResponse: проверьте правильность импорта: from django.http import JsonResponse.

  3. Не работает маршрут (Page not found): убедитесь, что маршрут прописан корректно и сервер перезапущен.

  4. Проблема с версиями: если DRF вас "ругает" на версии, проверьте, что вы используете Python 3.6+ и совместимую с DRF версию Django.

Реальное применение знаний

Теперь у вас есть установленный и настроенный DRF, готовый к работе. Вы можете начать создавать API для ваших проектов, интегрировать мобильные приложения, работать с фронтенд-разработчиками или даже строить свой собственный сервер для сторонних сервисов.

Django REST Framework используется в реальных крупных проектах, таких как OpenStack. Ваши знания не только помогут решить задачи на собеседовании, но и дадут вам инструмент, с которым можете создавать API любого уровня сложности.

Теперь DRF готов к дальнейшей работе, вперёд к следующей лекции, где начнём строить реальный API!

1
Задача
Модуль 3: Django, 16 уровень, 1 лекция
Недоступна
Установка Django REST Framework
Установка Django REST Framework
1
Задача
Модуль 3: Django, 16 уровень, 1 лекция
Недоступна
Подключение DRF к Django-проекту
Подключение DRF к Django-проекту
Комментарии
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ