Databrowse is a Django application that lets you browse your data.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Alireza Savand 7e9b742047
Add Releasing section to readme.
6 months ago
.tx #3 completed transifex translation configuration 7 years ago
django_databrowse Merge pull request #38 from cometsong/field_list 2 years ago
.gitignore Add .ropeproject to be ignored 5 years ago
.travis.yml Test on django 1.11 2 years ago
AUTHORS.rst add myself to authors 2 years ago
ChangeLog.rst Update changelog 2 years ago
LICENSE Added license file 7 years ago Updated since AUTHORS.rst have changed 6 years ago
README.rst Add Releasing section to readme. 6 months ago
requirements.txt Now it's only Django 5 years ago add admin context processor 2 years ago Add Python 3 classifiers 2 years ago Add django 1.10 compatibility 3 years ago


Django Databrowse

.. image::
:alt: travis-cli tests status for django-databrowse

.. contents:: Table of contents

.. note::

Extracted from `Django 1.4 since databrowse deprecation <>`_


Databrowse is a Django application that lets you browse your data.

As the Django admin dynamically creates an admin interface by introspecting
your models, Databrowse dynamically creates a rich, browsable Web site by
introspecting your models.

``django-databrowse`` is available on pypi

So easily install it by ``pip``

$ pip install django-databrowse

Or by ``easy_install``

$ easy_install django-databrowse

Another way is by cloning ``django-databrowse``'s `git repo <>`_ ::

$ git clone git://

Then install it by running:

$ python install

How to use Databrowse

1. Point Django at the default Databrowse templates. There are two ways to
do this:

* Add ``'django_databrowse'`` to your `INSTALLED_APPS`
setting. This will work if your `TEMPLATE_LOADERS` setting
includes the ``app_directories`` template loader (which is the case by
default). See the `template loader docs <>`_ for more.

* Otherwise, determine the full filesystem path to the
`django_databrowse/templates` directory, and add that
directory to your `TEMPLATE_DIRS <>`_ setting.

2. Register a number of models with the Databrowse site::

import django_databrowse
from myapp.models import SomeModel, SomeOtherModel, YetAnotherModel, YetAnotherModel)

Note that you should register the model *classes*, not instances.

it is possible to register several models in the same
call to ``.

It doesn't matter where you put this, as long as it gets executed at some
point. A good place for it is in your `URLconf file <>`_ (````).

3. Change your URLconf to import the `~django_databrowse` module::

from django_databrowse

...and add the following line to your URLconf::


The prefix doesn't matter -- you can use ``databrowse/`` or ``db/`` or
whatever you'd like.

4. Run the Django server and visit ``/databrowse/`` in your browser.

Requiring user login

You can restrict access to logged-in users with only a few extra lines of
code. Simply add the following import to your URLconf::

from django.contrib.auth.decorators import login_required

Then modify the `URLconf <>`_ so that the
`` view is decorated with

(r'^databrowse/(.*)', login_required(,

If you haven't already added support for user logins to your `URLconf
<>`_, as described in the `user authentication docs
<>`_, then you will need to do so now with the following

(r'^accounts/login/$', 'django.contrib.auth.views.login'),

The final step is to create the login form required by
`django.contrib.auth.views.login`. The
`user authentication docs <>`_ provide full details and a
sample template that can be used for this purpose.


``django-databrowse`` has been tested Django 1.6 and later. To run the the tests:


$ python

It's also available on travis-ci:


Currently ``English`` is only available language that is being packaged. If you would like to contribute
in localization you can find ``django-databrowse`` project on Transifex as well:

**Translation Status on Transifex**

.. image::
:alt: django-databrowse translation status on transifex


* To make a release, first update the changelog with all the changes in the new release.
* Tag the git repository with the release version.
* Upload to PyPI.
* Update