Metadata-Version: 1.1
Name: django-drfxios
Version: 0.2
Summary: A Django app to simplify communication between frontend and Django Rest Framework
Home-page: https://github.com/milano-slesarik/django-drfxios.git
Author: Milan Slesarik
Author-email: milslesarik@gmail.com
License: BSD-3-Clause
Description: =======
        DrfXios
        =======
        
        **DrfXios** simplifies communication between frontend and Django Rest Framework API.
        
        Quick start
        -----------
        
        >>> pip install django-drfxios
        
        **settings.INSTALLED_APPS**
        
        .. code-block:: python
        
            INSTALLED_APPS = [
                ...
                'drfxios',
                ...
            ]
        
        **settings.py**
        
        .. code-block:: python
        
            DRFXIOS_ROUTER_PATH = "<dotted.path.to.router>" # eg "api.urls.router"
        
        **context_processors**
        
        .. code-block:: python
        
            TEMPLATES = [
                {
                    ...
                    'OPTIONS': {
                        'context_processors': [
                            ...
                            'drfxios.context_processors.drfxios',
                            ...
                        ],
                    },
                },
            ]
        
        
        
        
        
        
        
        
        **base.html**
        
        .. code-block:: django
        
            <script src="https://cdnjs.cloudflare.com/ajax/libs/axios/0.19.2/axios.js"></script>
            <script src="https://cdn.jsdelivr.net/npm/url-join@4.0.1/lib/url-join.min.js"></script>
            <script src="{% static "drfxios/drfxios.js" %}"></script>
        
            <script>
                dx = new DrfXios('api', {{ DRFXIOS.MODEL_LIST|safe }})
            </script>
        
        And you're ready tu use DrfXios in your templates.
        
        Example::
        
            dx.getModel(<pk>)
            dx.createModel(<data:obj>)
            dx.deleteModel(<pk>)
            dx.getModelList(<filter:obj>)
            dx.updateModel(<data:obj>)
            dx.patchModel(<data:obj>)
        
        All methods return JavaScript promises so you can use `.then`, `.catch` and `.finally` methods.
Platform: UNKNOWN
Classifier: Environment :: Web Environment
Classifier: Framework :: Django
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Topic :: Internet :: WWW/HTTP
