Skip to main content

A quick 'n' dirty Django app for switching between different users while testing

Project description

A quick ‘n’ dirty django app for switching between different users while testing.

  • “Quick and dirty”. Just include the middleware. That’s it!

  • Provides a select box with a list of users.

  • User list can be defined in settings or all users are loaded.

  • Works only when settings.DEBUG is True

Requirements

Django 1.2

Installation

To install the latest version:

pip install git+git://github.com/ikraftsoft/django-userswitch#egg=django-userswitch

It can also be installed from PyPI with pip or easy_install:

pip install django-userswitch
easy_install install django-userswitch

Setup & Usage

Add userswitch middleware to the MIDDLEWARE_CLASSES in settings.py after the default middlewares:

MIDDLEWARE_CLASSES = (
  'django.middleware.common.CommonMiddleware',
  'django.contrib.sessions.middleware.SessionMiddleware',
  'django.middleware.csrf.CsrfViewMiddleware',
  'django.contrib.auth.middleware.AuthenticationMiddleware',
  'django.contrib.messages.middleware.MessageMiddleware',
  ...
  'userswitch.middleware.UserSwitchMiddleware',
)

Optionally you can add USERSWITCH_OPTIONS dict to the settings.py:

USERSWITCH_OPTIONS = {
    'css_class': '',       # CSS class to be added to the switcher widget. Default='userswitch'.
    'css_inline': '',      # Inline css for the switcher widget, if any
    'content_types': (),   # a tuple of content-type for which to render switcher widget. Default = ('text/html', 'application/xhtml+xml')
    'auth_backend': '',    # Custom auth backend if any. Default = 'django.contrib.auth.backends.ModelBackend'
    'replace_text': '',    # Text to replace with the widget, default add to end "body" tag.
    'users': (),           # List of usernames(as strings) to be shown in the switcher widget. If its empty, all users are loaded.
    'force_on': False,     # Turns on USERSWITCH even if DEBUG = False
}

Note: default value of css_inline option provides some basic absolute positioning. To change those either specify css_inline option manually or override position, top, right in the class specified in css_class with !important.

That’s All!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-userswitch-0.2.1.tar.gz (3.5 kB view details)

Uploaded Source

File details

Details for the file django-userswitch-0.2.1.tar.gz.

File metadata

File hashes

Hashes for django-userswitch-0.2.1.tar.gz
Algorithm Hash digest
SHA256 d868754fe41113cab5e06351f76b14db916e072b942ae3d1ec76663a97925ac6
MD5 aff0c70c354625e54ad2aadbc7f68648
BLAKE2b-256 f0e9b3db4d436da1f8dcc427d362774291bd7b077de266ca5626e84ad2a293ac

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page