Skip to content

hulygun/django-api-toolkit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Very simple app for REST API create via Django Framework

Build Status pypi python license Development status https://coveralls.io/repos/github/hulygun/django-api-toolkit/badge.svg?branch=master
pip install django-api-toolkit

In the first you need initialize your project

project_init <path to project>

For existing projects you should to generate env file

env_generator <path to project>

This script generate base variables that needed to run project. You can also add youself variables in env file You should also change your manage.py. Add APIManager to your file. e.q.

#!/usr/bin/env python
import sys

from api_tools.utils import APIManager

if __name__ == "__main__":
    er = APIManager(__file__, 'cfg.settings')  # path to user project settings
    er.set_app_dir('apps')  # directory for user project applications
    er.apply()  # apply settings

    from django.core.management import execute_from_command_line
    execute_from_command_line(sys.argv)
├── apps  # dir for your apps
├── cfg  # dir for diferent project configurations
│   ├── settings.py # user project settings
│   └── wsgi.py
└── manage.py
  • COMMON_APPS - django common applications
  • THIRD_PARTY_APPS - third party applications
  • EXTRA_APPS - applications should be insted before common apps
  • PROJECT_APPS - your project applications

You also can overwrite other standard django settings keys and add yourself variables

All project models should be inherited of RestModel(this standart django abstract model and you can use all capabilities of this)

from api_tools.models import RestModel

class MyModel(RestModel):
    ...

RestModel have subclass Rest. This subclass have properties for control your rest models. RestModel also have classmethods for these controls.

queryset:defines queryset as lambda of model.objects
fields:list of allowed fields of model
name:name of viewset
route:route of endpoint

Defines serializer for viewset of model

Defines queryset for viewset

Set endpoint for your model

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages