Django book: использование панели управления

Автор: | 03/14/2015
 

django_logo_2Предыдущая часть.

Панель управления разработана для использования не специалистами, а простыми пользователями, и поэтому она выглядит очень просто и понятно. Тем не менее — мы рассмотрим основные её возможности.

Первое, что вы увидите — страница авторизации:

django_admin_1

Войдите, используя логин и пароль, который вы указали при выполнении python manage.py syncdb или python manage.py createsuperuser. Если вы не можете войти — убедитесь, что вы создали суперпользователя, вызвав python manage.py createsuperuser ещё раз и указав его имя. Попробуйте создать нового пользователя, если у вас никак не получается войти под ранее созданным.

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

django_admin_2

Каждый тип данных в панели управления Django имеет список изменения и форму редактирования. Список изменения — отображает все объекты в базе данных, а форма редактирования позволяет добавлять, изменять или удалять записи в базе.

Другие языки

Если ваш родной язык не английский и ваш браузер настроен на использование предпочтительного языка — вы можете сделать небольшое изменение, что бы проверить — имеется ли панель управления на вашем языке. Просто добавьте параметр 'django.middleware.locale.LocaleMiddleware' к настройке MIDDLEWARE_CLASSES после строки 'django.contrib.sessions.middleware.SessionMiddleware'.

Когда вы сделаете это — перезагрузите страницу панели управления. Если перевод панели для вашего языка доступен — то различные части интерфейса, такие как «Смена пароля» и «Выйти», должны будут отобразиться на вашем родном языке:

django_admin_3

Однако дальнейшие примеры будут показаны с английским интерфейсом.

Нажмите на «Change» в строке «Users» что бы загрузить список изменений для пользователей:

django_admin_4

Тут отображаются все пользователи в базе данных. Это более приятное отображение такого SQL запроса:

MariaDB [django_example1]> SELECT * FROM auth_user;
+----+----------+------------+-----------+-----------------+-----------------------------------------------------+----------+-----------+--------------+---------------------+---------------------+
| id | username | first_name | last_name | email           | password                                            | is_staff | is_active | is_superuser | last_login          | date_joined         |
+----+----------+------------+-----------+-----------------+-----------------------------------------------------+----------+-----------+--------------+---------------------+---------------------+
|  1 | setevoy  |            |           | mail@domain.com | sha1$bf94d$fa264663ff61415561ca951872b5b2b450b3d6b8 |        1 |         1 |            1 | 2015-03-01 04:11:47 | 2015-03-01 03:48:40 |
+----+----------+------------+-----------+-----------------+-----------------------------------------------------+----------+-----------+--------------+---------------------+---------------------+

Если вы следователи нашим примерам — то тут у вас должен быть только один пользователь, которого вы добавили ранее, но когда вы создадите ещё пользователей — вы увидите, что возможности сортировки, фильтрации и поиска будут полезными. Фильтрация пользователей справа, сортировка доступна кликом по заголовку колонки, а поле поиска сверху позволяет найти пользователя по имени.

Нажмите на имя пользователя, которого вы создали, и вы увидите форму редактирования записи для него:

django_admin_5

На этой странице вы можете изменить атрибуты пользователя, такие как  как его имя/фамилию а различные права доступа (если вы хотите поменять пароль — то вам надо кликнуть на «change password form» под полем пароля, вместо редактирования хеша). Ещё одна вещь, на которую стоит обратить внимание — тут используются поля различных форм: например, поля даты/времени имеют опции календаря, булевы поля — имеют чекбоксы, символьные поля — простые поля ввода данных.

Вы можете удалить запись о пользователя, кликнув на «Delete» слева внизу. Это действие отправит вас на страницу подтверждения действия, которое так может отобразить некоторые связанные объекты для удаления (например, если вы удаляете издателя — все книги этого издателя будут так же удалены).

Вы можете добавить запись, нажав на «Add» в соответствующей колонке на домашней странице панели управления. Тогда откроется пустая страница страницы редактирования, готовая к наполнению данными.

Так же, обратите внимание, что панель управления проводит проверку вводимых данных. Попробуйте оставить пустым или введите некорректные данные в поле даты, и вы увидите ошибки при попытке её сохранить:

django_admin_6

После того как вы отредактируете существующий объект — вы можете увидеть ссылку на историю в верхнем правом углу страницы. Каждое изменение которые было сделано в панели управления записывается, и вы можете позже просмотреть его:

django_admin_7

Продолжение — Django book: добавление моделей в панель управления.