Welcome, guest | Sign In | My Account | Store | Cart

Notice! PyPM is being replaced with the ActiveState Platform, which enhances PyPM’s build and deploy capabilities. Create your free Platform account to download ActivePython or customize Python with the packages you require and get automatic updates.

pypm install django-privatesite

How to install django-privatesite

  1. Download and install ActivePython
  2. Open Command Prompt
  3. Type pypm install django-privatesite
 Python 2.7Python 3.2Python 3.3
Windows (32-bit)
Windows (64-bit)
Mac OS X (10.5+)
Linux (32-bit)
Linux (64-bit)
0.0.2 Available View build log
Lastest release
version 0.0.2 on Jan 9th, 2014

Django custom admins. Don`t reinvent the bicycle and use django.contrib.admin everywhere.


BENEFITS of django.contrib.admin

  • Used access control from django.contrib.admin
  • Used inlines (generic inlines)
  • Used fieldsets
  • Used filters
  • Used Actions
  • Delete Confirmation
  • Object history
  • Pagination
  • Widgets for dates, raw id field


Install from pypi, with pip:

pip install django-privatesite

Add privatesite to INSTALLED_APPS:

INSTALLED_APPS = ("privatesite", ) + ('django.contrib.admin', ...)

Please note, that privatesite app must be upper then django.contrib.admin app in INSTALLED_APPS list to overload admin/base_site.html template


from privatesite.admin import CustomAdminSite

site1 = CustomAdminSite(name="site1", app_name="admin")

class MyPrivateZone(CustomAdminSite):
admin_base_template = 'my_zone/base.html'

site2 = MyPrivateZone(name="zone", app_name="admin")

personal = CustomAdminSite(name="personal", app_name="admin")

register models now

from myapp.models import Car, Animal, Human

site1.register(Car) site2.register(Car) site2.register(Animal) site2.register(Human) personal.register(Human)

in urls.py

urlpatterns += patterns("",
(r'^manage/admin/', include(site1.urls)), (r'^private/admin/', include(site2.urls)), (r'^personal/', include(personal.urls)),

System Message: WARNING/2 (<string>, line 68)

Definition list ends without a blank line; unexpected unindent.


And go to see, whats happen.

In template you may use

{% url 'site1:myapp_car_changeview' %} {% url 'site2:myapp_car_change' car_id %}

{% url 'personal:myapp_human_history' human_id %}

If you want to add custom views, use this helper https://github.com/ionelmc/django-admin-utils


  • don`t work with django-admin-tools now (fix in near future)
  • write tests

Subscribe to package updates

Last updated Jan 9th, 2014

What does the lock icon mean?

Builds marked with a lock icon are only available via PyPM to users with a current ActivePython Business Edition subscription.

Need custom builds or support?

ActivePython Enterprise Edition guarantees priority access to technical support, indemnification, expert consulting and quality-assured language builds.

Plan on re-distributing ActivePython?

Get re-distribution rights and eliminate legal risks with ActivePython OEM Edition.