Basic features used in all PSU Django apps
Project description
PSU-Base
Reusable Django app specifically for PSU's custom-built web applications.
It encapsulates the common functionality that we would otherwise need to program into each application we build.
Features include:
- PSU Single Sign-On (SSO)
- Authentication and authorization features
- Feature toggles
- Template tags for our static content server
Quick Start
Dependencies
The following dependencies may be REQUIRED in your system:
libpq-dev
sudo apt install libpq-dev
Installation
pip install psu-base
Configuring Your App
-
Add PSU-Base and its two required apps to INSTALLED_APPS in
settings.py
:INSTALLED_APPS = [ ... 'django_cas_ng', 'crequest', 'psu_base', ]
-
Copy
docs/app_settings_template.py
to your app, name itapp_settings.py
and update the values as needed. -
Copy
docs/local_settings_template.py
to your app, name itlocal_settings.py
and update the values as needed. -
Import your app and local settings files at the end of your settings.py file:
settings.py
# Get app-specific settings
from .app_settings import *
# Override settings with values for the local environment
from .local_settings import *
-
Run
python manage.py migrate
to create the PSU-Base models in your development database -
Configure your app's top-level
urls.py
to include PSU URLs# my_app/urls.py from django.conf import settings from django.conf.urls import url from django.urls import path, include ... urlpatterns = [ ... # PSU and CAS views are defined in psu_base app url(settings.URL_CONTEXT+'/psu/', include(('psu_base.urls', 'psu_base'), namespace='psu')), url(settings.URL_CONTEXT+'/accounts/', include(('psu_base.urls', 'psu_base'), namespace='cas')), ]
Usage
Usage of the psu-base app is documented in Confluence.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.