Задать вопрос
@mcrack25

Как в DRF реализовать версионирование api приложений?

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

По данным инструкциям реализовал версионирование по неймспейсам:
https://django.fun/ru/docs/django-rest-framework/3...
https://www.django-rest-framework.org/api-guide/ve...

Получил такой вид подключения:
path("v1.0/accounts/", include("accounts.api.v1.urls", namespace="v1.0")),
path("v1.0/new-accounts/", include("new_accounts.api.v1.urls", namespace="v1.0")),

URL каноничный получается:
abc.localhost/api/v1.0/accounts/test

Но он выдаёт варнинги:
WARNINGS:
?: (urls.W005) URL namespace 'v1.0' isn't unique. You may not be able to reverse all URLs in this namespace

Получается я не могу использовать в namespace v1.0, придётся переименовать в accounts_v1.0, но тогда при минорном изменении на версию 1.1 во вьюшке придётся проверять на accounts_v1.0 или accounts_v1. 1 и делать определенные манипуляции.

Нормально ли это и что вы используете для версионирования api в DRF, что делаете для минорных и мажорных версий ?
  • Вопрос задан
  • 160 просмотров
Подписаться 1 Средний 2 комментария
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы