Как преобразовать живой проект djnago в проект rest api
как лучше всего конвертировать проект с django на django rest framework
У меня есть живой проект django, который полностью работает, но теперь он хочет преобразовать проект в rest api.
я сделал rest api для проекта, который имеет новые классы и функции для rest api с (проверка формы и та же логика) копия из django класса, который был реализован.
Итак, происходит дублирование логики, есть ли способ не дублировать логику и сделать запуск обоих классов django и django rest framework?
Проблема в том, что когда требуется обновление для любой страницы, то мне приходится кодировать обе стороны django и django rest framework, поэтому может возникнуть ошибка при копировании!!!
предложения приветствуются!!!
В Django можно создать API с помощью пользовательских представлений, но я советую использовать Django REST Framework (DRF), так как это упрощает процесс.
Вкратце,
- Установите DRF с помощью
pip install djangorestframework
(добавьте его также кINSTALLED_APPS
в ваш файл settings.py). - Создайте сериализатор в соответствии с вашими потребностями (DRF имеет встроенные сериализаторы, такие как ModelSerializer). Обратите внимание, что ОП определенно может использовать модели, которые уже есть в Django. .
- Создайте представления (DRF имеет общие представления) и укажите URL для доступа к представлениям.
Допустим, у человека есть приложение под названием books
. Для того, чтобы код не смешивался между Django и API, создайте папку api внутри приложения books, и у вас должно получиться что-то вроде этого
books
-...
-api
--__init__.py
--serializers.py
--views.py
--urls.py
Если ОП захочет, добавьте ссылку на этот urls.py в основной файл urls.py ОП,
urlpatterns = [
# ...
path('api/', include('books.api.urls', namespace='api')),
]