Хостинг Django от «Джино»
Table of contents

Активация интерфейса администратора

Интерфейс администратора Django совсем не обязателен, потому что только определённые типы сайтов требуют наличия данной функциональности. Поэтому вы должны выполнить несколько шагов для активации интерфейса для вашего проекта.

Сначала внесите изменения в файле настроек:

  1. Добавим django.contrib.admin в параметр INSTALLED_APPS. (Порядок элементов в INSTALLED_APPS не имеет значения, но мы советуем содержать их в алфавитном порядке, для удобства чтения.)

  2. Убедитесь, что INSTALLED_APPS содержит django.contrib.auth, django.contrib.sessions и django.contrib.contenttypes. Интерфейс администратора требует подключения этих трёх пакетов. (Если вы следуете нашим инструкциям относительно проекта mysite, вспомните, что мы закомментировали эти три пакета в главе «Модели». Раскомментируйте их сейчас.)

  3. Убедитесь, что MIDDLEWARE_CLASSES содержит django.middleware.common.CommonMiddleware и django.contrib.sessions.middleware.SessionMiddleware а также django.contrib.auth.middleware.AuthenticationMiddleware. (И снова вам потребуется расскомментировать эти строчки для проекта mysite.)

Теперь выполните команду python manage.py syncdb. Она установит дополнительные таблицы в базу данных, которые будет использовать интерфейс администратора. При первом запуске syncdb при наличии django.contrib.auth в INSTALLED_APPS, у вас спросят о необходимости создания суперпользователя. Если вы его не создадите, то позже для его создания вам потребуется выполнить python manage.py createsuperuser. В противном случае вы не сможете войти в интерфейс администратора.

Теперь добавим административную часть в схему URL (в файл urls.py, помните?). По умолчанию, urls.py созданый с помощью django-admin.py startproject, содержит закомментированный код для административного интерфейса Django, и вам потребуется раскомментировать его. Вот, что там должно быть:

# Include these import statements...
from django.contrib import admin
admin.autodiscover()

# And include this URLpattern...
urlpatterns = patterns('',
    # ...
    (r'^admin/', include(admin.site.urls)),
    # ...
)

После этих несложных настроек, вы можете увидеть интерфейс администратора в действии. Запустите тестовый сервер (python manage.py runserver, как и в предыдущих главах) и перейдите по ссылке http://127.0.0.1:8000/admin/.

genyok 6 months, 1 week ago
Answer Link

reply to onokoy.a.v
При попытке создать администратора вылетают следующие ошибки. Уже все что можно было попробовал, сам найти проблему не могу. С БД вроде проблем нет djanga создает таблицы и добавляет данные.
<img src="http://s54.radikal.ru/i146/1107/54/dda7eb43bd86.jpg">

смотрите кодировку базу. скорее всего при создании бд и таблиц стояло latin

rad 6 months, 1 week ago
Answer Link

reply to onokoy.a.v
При попытке создать администратора вылетают следующие ошибки. Уже все что можно было попробовал, сам найти проблему не могу. С БД вроде проблем нет djanga создает таблицы и добавляет данные.
<img src="http://s54.radikal.ru/i146/1107/54/dda7eb43bd86.jpg">

Воспользоваться поиском на форуме. Слово "createsuperuser".

onokoy.a.v 6 months, 1 week ago
Answer Link

При попытке создать администратора вылетают следующие ошибки. Уже все что можно было попробовал, сам найти проблему не могу. С БД вроде проблем нет djanga создает таблицы и добавляет данные.
<img src="http://s54.radikal.ru/i146/1107/54/dda7eb43bd86.jpg">

rad 1 year ago
Answer Link

Не представляете, что будет когда разберётесь с её возможностями!

pr_o 1 year ago
Answer Link

У меня одни эмоции были, когда я увидел админку.... Аааа!!!! Это же супермегоминиадминка!!! Спасибо!

script_kiddie 1 year, 1 month ago
Answer Link

в английском слабоват, но кажись проблема в кодировке

yanzay1 1 year, 1 month ago
Answer Link

python manage.py createsuperuser выдает ошибку:
=======================================
File "c:\Python27\lib\site-packages\django\db\backends\sqlite3\base.py", line
200, in execute
return Database.Cursor.execute(self, query, params) django.db.utils.DatabaseError: You must not use 8-bit bytestrings unless you use
a text_factory that can interpret 8-bit bytestrings (like text_factory = str).
It is highly recommended that you instead just switch your application to Unicode strings.
=====================================
что делать?


Ищем Python программистов

Found misprint?
Select it with the mouse and hit Enter
Ctrl-Enter
Processed:
33 1 199 25


The full repository of DjangoBook translation you can get on GitHub.
We appreciate your patches!

We are glad to hear your questions, comments or suggestions!
(Open in new tab)

Users number: 601

Русская группа

на поддержку перевода
Яндекс Яндекс.Деньги Хочу такую же кнопку
Ускорить процесс перевода!
ЯМ:41001223475816


© 2008-2012 Ruslan Popov @ gmail.com Powered by Django 1.2.5