django-admin-bootstrap

Responsive Theme for Django Admin With Sidebar Menu

Github stars Tracking Chart

Responsive Django Admin

If you're looking for a version compatible with Django 1.8 just install 0.3.7.1.

Features

  • Responsive
  • Sidebar Menu
  • Easy install / setup
  • Support Django 1.11 and 2.1
  • Bootstrap 3
  • Python 3

Screenshots

.. image:: https://raw.githubusercontent.com/douglasmiranda/django-admin-bootstrap/master/screenshots/screenshot.png
:target: https://github.com/douglasmiranda/django-admin-bootstrap/tree/master/screenshots
:alt: See Screenshots

More screenshots <https://github.com/douglasmiranda/django-admin-bootstrap/tree/master/screenshots>_

INSTALL

from pypi (recommended) ::

$ pip install bootstrap-admin

And don't forget to add bootstrap_admin in INSTALLED_APPS before
the django.contrib.admin.

Example:

.. code-block:: python

INSTALLED_APPS = (
    # ...
    'bootstrap_admin', # always before django.contrib.admin  
    'django.contrib.admin',
    # ...
)  

CUSTOMIZE

Sidebar Menu
^^^^^^^^^^^^

It is enabled by default. But if you remove django.template.context_processors.request from your context_processors.

Just disable it:

.. code-block:: python

BOOTSTRAP_ADMIN_SIDEBAR_MENU = False

Branding - Overriding logo
^^^^^^^^^^^^^^^^^^^^^^^^^^

If you want to use your own logo, you can achieve this by overriding the login.html and base_site.html, just like in Django Admin.

First, make sure the TEMPLATES setting in your settings.py is properly configured:

.. code-block:: python

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR, 'my_django_project/templates')],
        'APP_DIRS': True,
        # other stuff
    },
]

DIRS: You must set the location of your templates, an absolute path.

I'm assuming BASE_DIR is:

.. code-block:: python

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

This pattern of creating a global templates folder could be useful for you to use for your base.html and other global templates.

More info: https://docs.djangoproject.com/en/2.1/ref/templates/api/#configuring-an-engine

Let me show you a project structure as an example:

.. code-block::

├── my_django_project
│   ├── core
│   │   ├── admin.py
│   │   ├── apps.py
│   │   ├── models.py
│   │   ├── tests.py
│   │   └── views.py
│   ├── settings.py
│   ├── templates
│   │   └── admin
│   │       ├── base_site.html
│   │       └── login.html
│   ├── urls.py
│   └── wsgi.py
├── manage.py

You can see I created a global templates/ folder,
with another directory inside admin/ containing login.html and base_site.html.

Their respective contents are:

base_site.html

.. code-block:: html

{% extends 'admin/base_site.html' %}
{% load static %}

{% block branding %}
    <a href="{% url 'admin:index' %}" class="django-admin-logo">
        <!-- Django Administration -->
        <img height="60" src="{% static "bootstrap_admin/img/logo-140x60.png" %}" alt="{{ site_header, default:_('Django administration') }}">
    </a>
{% endblock branding %}

login.html

.. code-block:: html

{% extends 'admin/login.html' %}
{% load i18n static %}

{% block branding %}
    <a href="{% url 'admin:index' %}" class="django-admin-logo">
        <!-- Django Administration -->
        <img height="60" src="{% static "bootstrap_admin/img/logo-140x60.png" %}" alt="{{ site_header, default:_('Django administration') }}">
    </a>
{% endblock branding %}

More info: https://docs.djangoproject.com/en/2.1/ref/contrib/admin/#admin-overriding-templates

Contributing

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request =]

See the full list <https://github.com/douglasmiranda/django-admin-bootstrap/blob/master/AUTHORS.rst>_ of contributors.

Open an issue <https://github.com/douglasmiranda/django-admin-bootstrap/issues/new>_
if you find a bug or want something more.

Main metrics

Overview
Name With Ownerdouglasmiranda/django-admin-bootstrap
Primary LanguageHTML
Program languageMakefile (Language Count: 5)
Platform
License:MIT License
所有者活动
Created At2012-07-16 06:47:31
Pushed At2022-10-10 08:21:49
Last Commit At2022-06-24 14:17:02
Release Count36
Last Release Name0.4.4 (Posted on )
First Release Namev0.1 (Posted on 2012-12-08 02:37:56)
用户参与
Stargazers Count882
Watchers Count55
Fork Count234
Commits Count462
Has Issues Enabled
Issues Count125
Issue Open Count12
Pull Requests Count32
Pull Requests Open Count2
Pull Requests Close Count4
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private