django-full-crud

Django Full CRUD


Keywords
Django, CRUD, automation, pypi-package, python
License
MIT
Install
pip install django-full-crud==0.3

Documentation

Django full crud!

This package is for you to create a fully automatic CRUD of your models.

Dependencies

Django Build your apps using this app template.

Installation

pip install django-full-crud

Add the following in settings.py:

INSTALLED_APPS = [
    ...
    'django_full_crud',
    ...
]

Features

  • Creation the admin file.
  • Creation the form file.
  • Creation the templates (delete, detail, form and list).
  • Creation the serializer.
  • Creation the views (create, delete, detail, list and update).
  • Creation the viewsets.
  • Creation the init files.

Recommendations

Do not make your init files with strings, the package will not find your models. Make a single file for each class, and import them in the init file.

Getting start

Create a .vscode file at the root of your project, then add a file called "django_full_crud.json".

Add the following to it:

{
    "project_name": "name_of_your_project"
}

After that in need to create your models and add them to init.py. The following commands can be run in the terminal:


python manage.py full_crud nome_app NomeModel

The full_crud runs on the specified model.


python manage.py full_crud nome_app

The full_crud runs ont the specified app.


python manage.py full_crud

The full_crud runs on the project.

Extra configs of django_full_crud.json

You can make extra settings, saying what you want to be generated. By default the values are true, but you can change them in the django_full_crud.json file:

{
    "project_name": "name_of_your_project",
    "make_admins": false,
    "make_admins_init": false,
    // 
    "make_forms": false,
    "make_forms_init": false,
    // 
    "make_serializers": false,
    "make_serializers_init": false,
    // 
    "make_templates": false,
    // 
    "make_views": false,
    "make_views_init": false,
    // 
    "make_viewsets": false,
    "make_viewsets_init": false
}