Metadata-Version: 2.0
Name: django-decorator-include
Version: 1.3
Summary: Include Django URL patterns with decorators.
Home-page: https://github.com/twidi/django-decorator-include/
Author: Jeff Kistler
Author-email: jeff@jeffkistler.com
License: BSD
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Framework :: Django
Classifier: Framework :: Django :: 1.8
Classifier: Framework :: Django :: 1.9
Classifier: Framework :: Django :: 1.10
Classifier: Framework :: Django :: 1.11
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Topic :: Internet :: WWW/HTTP
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.2
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Requires-Dist: Django (>=1.8)

django-decorator-include
========================

Include Django URL patterns with decorators.

Maintained by Twidi, on https://github.com/twidi/django-decorator-include based
on the original work from Jeff Kistler on
https://github.com/jeffkistler/django-decorator-include.


Installation
------------

Installation from Source
````````````````````````

Unpack the archive, ``cd`` to the source directory, and run the following
command::

    python setup.py install

Installation with pip
`````````````````````

Assuming you have pip installed, run the following command to install from
PyPI::

    pip install django-decorator-include

Installation with pip and git
`````````````````````````````

Assuming you have pip and git installed, run the following command to install
from the GitHub repository::

    pip install git+git://github.com/twidi/django-decorator-include.git#egg=django-decorator-include

Usage
-----

``decorator_include`` is intended for use in URL confs as a replacement for the
``django.conf.urls.include`` function. It works in almost the same way as
``include``, however the first argument should be either a decorator or an
iterable of decorators to apply, in reverse order, to all included views. Here
is an example URL conf::

    from django.conf.urls import url
    from django.contrib.auth.decorators import login_required

    from decorator_include import decorator_include

    urlpatterns = [
        url(r'^$', 'mysite.views.index', name='index'),
        url(r'^secret/', decorator_include(login_required, 'mysite.secret.urls')),
    ]

Running tests
-------------

If `decorator_include` is in the `INSTALLED_APPS` of your project, and it was
installed with the test (ie not from PyPI) simply run::

    django-admin test decorator_include

You may want to use ``django-admin`` or ``./manage.py`` depending on your
installation.

If you are in a fresh virtualenv to work on ``decorator_include``, install the
django version you want::

    pip install django

Then make the ``decorator_include`` module available in your python path. For
example, with ``virtualenv-wrapper``, considering you are at the root of the
``django-decorator-include`` repository, simply do::

    add2virtualenv src

Or simply::

    pip install -e .

Then to run the tests, this library provides a test project, so you can launch
them this way::

    DJANGO_SETTINGS_MODULE=decorator_include.tests.testproject.settings django-admin.py test decorator_include

Or simply launch the ``runtests.sh`` script (it will run this exact command)::

    ./runtests.sh

Supported versions
------------------

============== =======================
Django version Python versions
============== =======================
1.8            2.7, 3.2, 3.3, 3.4, 3.5
1.9            2.7, 3.4, 3.5
1.10           2.7, 3.4, 3.5
1.11           2.7, 3.4, 3.5, 3.6
============== =======================


