No project description provided
Project description
Contents
Instalation
pip install django-api-toolkit
Get started
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)
Usage
Structure
├── apps # dir for your apps ├── cfg # dir for diferent project configurations │ ├── settings.py # user project settings │ └── wsgi.py └── manage.py
Settings
- 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
Models
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): ...
Advanced
RestModel have subclass Rest. This subclass have properties for control your rest models. RestModel also have classmethods for these controls.
RestModel overwrites
RestModel.Rest
queryset: | defines queryset as lambda of model.objects |
---|---|
fields: | list of allowed fields of model |
name: | name of viewset |
route: | route of endpoint |
RestModel._rest_serializer
Defines serializer for viewset of model
RestModel._rest_queryset
Defines queryset for viewset
RestModel._rest_endpoint
Set endpoint for your model
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Filename, size | File type | Python version | Upload date | Hashes |
---|---|---|---|---|
Filename, size django-api-toolkit-0.1.6.tar.gz (7.8 kB) | File type Source | Python version None | Upload date | Hashes View |