djangoautorouter 0.1

Creator: danarutscher

Last updated:

Add to Cart

Description:

djangoautorouter 0.1

Django Auto Router
Fast Django Routing.
DAR (Django Auto Router) is a simple library for easy routing DRF (Django REST Framework) views and viewsets.
Requirements
DAR requires:

Python 3.6+
Django 3.0+
Django REST Framework

Installation
Install using pip.
pip install djangoautorouter

Add 'auto_router' to your INSTALLED APPS.
INSTALLED_APPS = [
...
'auto_router'
]

Usage

You should create a routers.py in your main app:

from auto_router import Router

router_v2 = AutoRouter("api/v2/", namespace="api-v2")
router_v1 = AutoRouter("api/v1/", namespace="api-v1")


Add it to your urls.py:

from django.contrib import admin
from django.urls import path, include

from .routers import main_router, router

urlpatterns = [
path("admin/", admin.site.urls),
main_router.path,
router.path,
]


Then, from your views.py in any of your apps, you can route it by using:

from rest_framework import generics, mixins, viewsets

from main.routers import router_v1

from . import models, serializers

@router_v1.route_view("cinema/list-movies/", "movie-list")
class ListMovies(generics.ListAPIView):
queryset = models.Movie.objects.all()
serializer_class = serializers.MovieSerializer

@router_v1.route_viewset("cinema/movies", "movies")
class MovieViewSet(viewsets.ModelViewSet):
serializer_class = serializers.MovieSerializer
queryset = models.Movie.objects.all()


Call it:

GET http://localhost:8000/api/v1/cinema/list-movies/

POST http://localhost:8000/api/v1/cinema/movies/

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.