Общие представления в REST-фреймворке Django против представлений на основе пользовательских функций

Я хочу рефакторить views.py в моем проекте Django. В настоящее время это все представления, основанные на функциях, с различной логикой бэкенда для каждой конечной точки api. Большая часть логики связана с приемом входных данных, выполнением запросов, а затем манипулированием данными перед отправкой обратно на фронтэнд. Интересно, как стандартизировать это, поскольку я хотел бы иметь лучшую структуру. Также интересно, насколько полезны эти представления? Я не вижу смысла в их использовании, и если мне нужен список, я могу просто запросить базу данных соответствующим образом и сделать с ним все, что захочу, внутри одного из моих представлений, основанных на функциях (например, объединить с другими данными или отфильтровать).

Также интересно, насколько необходимы сериализаторы? Прежде чем понять их полную функцию, я нашел альтернативы и смог отправить данные назад и вперед на фронт-енд просто отлично (в основном используя такие вещи, как values_list() или values() в конце запроса и создавая словари для отправки на фронт-енд). Использую React для фронт-энда и подключаюсь к Axios.

В Django Rest Framework использование generics view или mixins имеет преимущество для упрощения работы и написания меньшего количества кода. Лучше всего использовать их, когда вы хотите использовать шаблон CRUD в вашем API, потому что в этой ситуации дженерики очень просты в использовании, но если у вас есть определенные конечные точки, возможно, лучше написать их как функции.

Кроме того, сериализатор помогает вам получить наиболее мощный ответ, с валидацией и большим количеством вариантов для выбора для каждого поля, да, вы можете использовать values_list() и values(), но вы выбираете самый сложный путь.

Вернуться на верх