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

Автор: | 14/03/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  |            |           | [email protected] | 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: добавление моделей в панель управления.