Skip to main content
Python Software Foundation 20th Year Anniversary Fundraiser  Donate today!

Get Autogenerated Serializers and APi End Points

Project description

Autogenerated Api

Get Autogenerated Serializers and API EndPoints


- django
- djangorestframework
Tested with all Django versions from `1.8.x to 2.x.x`	

Released with latest version of Django.


For Django==1.8.x
	- djangorestframework==3.4.2

Installing autogenerated-api

autogenerated-api built for django.

pip install autogenerated_api

Customizable Files in Apps

django_app architecture looks like
- app_name

from .models import ModelName
from autogenerated_api.serializers import DeadlySerializerFactory
ModelNameDeadlySerializer = DeadlySerializerFactory(modelName)
- DeadlySerializerFactory `Optional Paramaters`
	- nest = ["field_1","field_2"] 
	- nested_fields = {"field_name_in_releation" : ["related_model_field_1","related_model_field_2"]}
	- if you want to get all fields of model while is in relation
		- nested_fields = {"field_name_in_reletion" : ["*"]}
	- exclude = ["field_1","field_2"] : fields that you want to exclude	

ModelNameDeadlySerializer = DeadlySerializerFactory(modelName,nest,nested_fields,exclude)

import app_name.models
import app_name.serializers
from autogenerated_api.autogeneration import make_all_viewsets


Create a new file in main project folder.

Main project folder Architecture

- main_proj_name

Add below codes in file.

import app_name.views
from django.urls import path, re_path , include

from autogenerated_api import autogenerated_urls
urlpatterns = autogenerated_urls.urlpatterns

urlpatterns += []

Adding to URLs

Add the Below

import django
dj_version = django.get_version()

from django.contrib import admin
    from django.urls import path, include , re_path
except ImportError:
    from django.conf.urls import include, url

    from django.core.urlresolvers import reverse 
except ImportError: 
    from django.urls import reverse

import re

    urlpatterns = [
            re_path(r'^api/', include(('main_proj_name.api_urls', 'main_proj_name') , namespace="api")),
    urlpatterns = [
        url(r'^admin/', include(,
        url(r'^api/', include('main_proj_name.api_urls' , namespace="api")),

Customizable Fields in Settings.

AUTOGENERATE_APPS = ["app_name"]

Finally, you will get autogenerated seraializers and end points.

- Autogenerated End Points
	- `/api/model_name_in_lower/` :  list out all the model_instance
	- `/api/model_name_in_lower/<instance_id>` : you will get detail of instance of given id  

Why use autogenerated_api?

Through autogenerated_api module , you can directly create serializers coresponding to each model and can also access the all fields value of model which are in relation (m2m or foreignkey relationship).

To get the list of model instance , You have to write an api end points , like ListAPiView and for getting the detail of model instance, have to implement DetailAPIView or RetrieveApiView end points.

Now , You don't have to create these APi-end points and get worry about the serailizers . This module will take care. Just , follow the steps that i mentioned above.


- Module with more functionality and more autogenerated end points.

I will really appreciate if you support the project by clicking the star button on Github repository

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for autogenerated-api, version 1.2.6
Filename, size File type Python version Upload date Hashes
Filename, size autogenerated_api-1.2.6-py2.py3-none-any.whl (22.1 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size autogenerated_api-1.2.6.tar.gz (11.4 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page