Port variant py39
Summary Django app requiring login for all views (3.9)
Package version 0.4.0
Keywords python
Maintainer Python Automaton
License Not yet specified
Other variants py310
Ravenports Buildsheet | History
Ravensource Port Directory | History
Last modified 20 NOV 2021, 04:14:38 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)
PY310 OFF Build using Python 3.10 PY39 ON Build using Python 3.9
Package Dependencies by Type
Build (only) python-pip:single:py39
Build and Runtime python39:single:standard
Download groups
main mirror://PYPIWHL/ba/83/f38e0616ff658bbe62fb6e89b100ba9b19f3b351aa833dde37dcd296c8ca
Distribution File Information
4127d5f9c11f6582a1c03e7758256b1fe5c872f64f212980e5ad5c67f5eeaa3d 9906 django_stronghold-0.4.0-py2.py3-none-any.whl
Ports that require python-django-stronghold:py39
No other ports depend on this one.