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.4.tar.gz (3.6 kB view details)

Uploaded Source

File details

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

File metadata

File hashes

Hashes for django-userswitch-fork-0.2.4.tar.gz
Algorithm Hash digest
SHA256 efc14c4df2ce2da0aabd6127bb1f9d9d28f43ad8e41c91ad94a9dc774b47f9d3
MD5 db6a75303acd8a00b7bbea4fdf77a405
BLAKE2b-256 3fdc703ee033f098b837eddf6ddb40870963c255a313029bf14e756aa0f038f0

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