Skip to main content

A Django middleware which allows you to view the site on behalf of a user.

Project description

A simple middleware which allows a superuser to view the site on behalf of another user.

This idea originated within Disqus, and has served quite well in helping debug user problems.

Install

Install the package:

pip install django-view-as

Add the middleware:

MIDDLEWARE_CLASSES = (
        'viewas.middleware.ViewAsMiddleware',
)

Register the application within INSTALLED_APPS:

INSTALLED_APPS = (
        'django.contrib.auth',
        'django.contrib.sessions',
        'viewas',
)

Make sure the application loader is available for templates:

TEMPLATE_LOADERS = (
        'django.template.loaders.app_directories.Loader',
)

Usage

Load any page with an html response type, hit the tilda key (~), and you’ll see a new toolbar at the bottom of the page. Enter a username to change who you’re viewing the site as.

Configure the menu toggle key

The following configuration option could be set in your settings.py to change the default keystroke to toggle the “View as” menu. Its value is the javascript key number that will be matched in the keydown event handler.

VIEWAS_TOGGLE_KEY = 119  # F8

If you need more complex behavior (such as not binding based on the superuser attribute), check out the source the middleware is designed to be extensibile.

Project details


Release history Release notifications

This version
History Node

0.5.0

History Node

0.4.0

History Node

0.3.1

History Node

0.3.0

History Node

0.2.4

History Node

0.2.3

History Node

0.2.2

History Node

0.2.1

History Node

0.2.0

History Node

0.1.5

History Node

0.1.4

History Node

0.1.3

History Node

0.1.2

History Node

0.1.1

History Node

0.1.0

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
django-view-as-0.5.0.tar.gz (8.2 kB) Copy SHA256 hash SHA256 Source None Jul 6, 2015

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page