django-db-tools

A read only mode tool for your database


License
BSD-3-Clause
Install
pip install django-db-tools==0.0.1

Documentation

Django Database Tools

Django Db Tools is a set of Database tools that are helpful when running applications with Django in production. The primary initial tool allows for flipping a site in and out of a read-only mode.

Currently the following functionality is being worked on:

  • A header displaying the read only mode
  • Ability to render a template explaining posts are not allowed

Installation

  1. Add the db_tools directory to your Python path.

  2. Add the following middleware to your project's settings.py file:

    MIDDLEWARE_CLASSES = (
        # ...
        'dbtools.middleware.ReadOnlyMiddleware',
        # ...
    )
    

Configuration

The db tools has two modes which you can control:

  1. READ_ONLY_MODE

This mode ensures all users even if already logged in act as anonymous users on your site. To enable this you need to set the following environment variable:

READ_ONLY_MODE = True
  1. GET_ONLY_MODE

This mode disallows all POST requests to your site. If your site only allows inserting data as POSTS then this should be sufficient to allow your users to view their data, but also ensure no new data is written. To enable this set the following environment variable:

GET_ONLY_MODE = True