python-django-stronghold
Port variant py37
Summary Django app requiring login for all views (PY37)
Package version 0.3.2
Homepage https://github.com/mgrouchy/django-stronghold
Keywords python
Maintainer Python Automaton
License Not yet specified
Other variants py38
Ravenports Buildsheet | History
Ravensource Port Directory | History
Last modified 20 APR 2020, 23:55:49 UTC
Port created 02 FEB 2018, 15:29:04 UTC
Subpackage Descriptions
single [Build Status] # Stronghold Get inside your stronghold and make all your Django views default login_required Stronghold is a very small and easy to use django app that makes all your Django project default to require login for all of your views. WARNING: still in development, so some of the DEFAULTS and such will be changing without notice. ## Installation Install via pip. ```sh pip install django-stronghold ` Add stronghold to your INSTALLED_APPS in your Django settings file `python INSTALLED_APPS = ( #... 'stronghold', ) ` Then add the stronghold middleware to your MIDDLEWARE_CLASSES in your Django settings file `python MIDDLEWARE_CLASSES = ( #... 'stronghold.middleware.LoginRequiredMiddleware', ) ``` ## Usage If you followed the installation instructions now all your views are defaulting to require a login. To make a view public again you can use the public decorator provided in `stronghold.decorators` like so: ### For function based views ```python from stronghold.decorators import public @public def someview(request): # do some work #... ``` ### For class based views (decorator) ```python from django.utils.decorators import method_decorator from stronghold.decorators import public class SomeView(View): def get(self, request, *args, **kwargs): # some view logic #... @method_decorator(public) def dispatch(self, *args, **kwargs): return super(SomeView, self).dispatch(*args, **kwargs) ``` ### For class based views (mixin) ```python from stronghold.views import StrongholdPublicMixin class SomeView(StrongholdPublicMixin, View): pass ``` ## Configuration (optional) ### STRONGHOLD_DEFAULTS Use Strongholds defaults in addition to your own settings. **Default**: ```python STRONGHOLD_DEFAULTS = True ``` You can add a tuple of url regexes in your settings file with the `STRONGHOLD_PUBLIC_URLS` setting. Any url that matches against these
Configuration Switches (platform-specific settings discarded)
PY37 ON Build using Python 3.7 PY38 OFF Build using Python 3.8
Package Dependencies by Type
Build and Runtime python37:single:standard
python-setuptools:single:py37
Download groups
main mirror://PYPI/d/django-stronghold
Distribution File Information
6abab3641369d9776629b974ba17af4f6a1b3144c268394aaf3a08cdc9e7d1e8 7086 django-stronghold-0.3.2.tar.gz
Ports that require python-django-stronghold:py37
No other ports depend on this one.