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,
    'onchange_redirect_url': '/'    # The url to redirect the user to onchange of user selection.
}

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-fork-0.2.3.tar.gz (3.5 kB view details)

Uploaded Source

File details

Details for the file django-userswitch-fork-0.2.3.tar.gz.

File metadata

File hashes

Hashes for django-userswitch-fork-0.2.3.tar.gz
Algorithm Hash digest
SHA256 b63fe4eaa0de58dccc1e4d96d18481a82ed848a224ec187e265e90411cba4b7b
MD5 446ca4b0285b8b95cab0a05360c5195d
BLAKE2b-256 5e0ae7aa4114602325e9cb354e1fce13fd90506bfe5d859d5a9cb99cc30203f7

See more details on using hashes here.

Supported by

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