Django - интерфейс администратора
Django предоставляет готовый к использованию пользовательский интерфейс для административных действий. Все мы знаем, насколько важен интерфейс администратора для веб-проекта. Django автоматически генерирует интерфейс администратора на основе моделей вашего проекта.
Запуск интерфейса администратора
Интерфейс администратора зависит от модуля django.countrib. Чтобы он работал, вам необходимо убедиться, что некоторые модули импортированы в кортежи INSTALLED_APPS и MIDDLEWARE_CLASSES файла myproject / settings.py.
Для INSTALLED_APPS убедитесь, что у вас есть -
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'myapp',
)
Для MIDDLEWARE_CLASSES -
MIDDLEWARE_CLASSES = (
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
)
Перед запуском вашего сервера для доступа к интерфейсу администратора вам необходимо запустить базу данных -
$ python manage.py migrate
syncdb создаст необходимые таблицы или коллекции в зависимости от типа вашей базы данных, необходимые для запуска интерфейса администратора. Даже если у вас нет суперпользователя, вам будет предложено создать его.
Если у вас уже есть суперпользователь или вы забыли его, вы всегда можете создать его, используя следующий код -
$ python manage.py createsuperuser
Теперь, чтобы запустить интерфейс администратора, нам нужно убедиться, что мы настроили URL-адрес для нашего интерфейса администратора. Откройте myproject / url.py, и у вас должно получиться что-то вроде -
from django.conf.urls import patterns, include, url
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
# Examples:
# url(r'^$', 'myproject.views.home', name = 'home'),
# url(r'^blog/', include('blog.urls')),
url(r'^admin/', include(admin.site.urls)),
)
Теперь просто запустите сервер.
$ python manage.py runserver
И ваш интерфейс администратора доступен по адресу: http://127.0.0.1:8000/admin/
После подключения к своей учетной записи суперпользователя вы увидите следующий экран -
Этот интерфейс позволит вам управлять группами и пользователями Django, а также всеми зарегистрированными моделями в вашем приложении. Интерфейс дает вам возможность выполнять как минимум операции «CRUD» (создание, чтение, обновление, удаление) над вашими моделями.