Встречается на собеседованиях • сегодня

Как описывал представления в Django

В Django представления (views) — это функции или классы, которые обрабатывают HTTP-запросы и возвращают HTTP-ответы. Есть два основных подхода:

  1. Функциональные представления — простые функции, принимающие request и возвращающие HttpResponse:
python
from django.http import HttpResponse

def hello(request):
    return HttpResponse("Hello, World!")
  1. Классовые представления (CBV) — более структурированный подход с наследованием от View или других встроенных классов:
python
from django.views import View
from django.http import HttpResponse

class HelloView(View):
    def get(self, request):
        return HttpResponse("Hello, World!")

Плюсы CBV:

  • Повторное использование кода (миксины, наследование).
  • Встроенные классы для распространённых задач (ListView, DetailView).

Плюсы FBV:

  • Простота для элементарных задач.
  • Прямолинейная логика без "магии" наследования.

Для маршрутизации в urls.py используются:

  • Для FBV: path('hello/', hello)
  • Для CBV: path('hello/', HelloView.as_view())

Выбор зависит от сложности задачи: FBV для простых случаев, CBV — для сложной логики или типовых операций.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы