Идентификация пользователя в Django #1

Jul 05, 2010 08:05

Делаю перевод одной статьи с djangoproject.com, поскольку мне нужно врубиться в тему - а я не врубаюсь почему-то. Не могу себя заставить думать, и в таком случае перевод - это прекрасный способ стимулирования мысли. Заодно и польза может кое-кому будет... Статья длинная, поэтому перевод, вероятно, получится в несколько приемов. Кроме того, переведу не всю статью - а только наиболее ее важные (с моей точки зрения части), а в остальном буду отсылать к исходному тексту...

Оригинал статьи: User authentication in Django

Идентификация пользователя в Джанго

В Джанго существует система идентификации пользователей, которая обрабатывает данные учетных записей, групп пользователей и прав доступа, пользовательских сессий. Этот документ объясняет, как эта система работает

Обзор

Система идентификации включает:

>>> Пользователей
>>> Права доступа: флажки (да/нет), которые определяют, какие задачи может решать данный пользователь
>>> Группы: основной способ, посредством которого права доступа и иные характеристики распространяются на группы из двух или более пользователей
>>> Сообщения: простой способ организовать поток сообщений для пользователей

Нежелательно в Джанго 1.2: компонент "Сообщения" будет удален в версии Джанго 1.4

Установка

Система идентификации поддерживается в Джанго в рамках пакета jango.contrib.auth. Для того, чтобы установить его, выполните следующее:

>>> в разделе INSTALLED_APPS укажите  'django.contrib.auth' and 'django.contrib.contenttypes'. (модель прав доступа в пакете django.contrib.auth должна следовать после django.contrib.contenttypes.)
>>> Запустите команду manage.py syncdb

Обратите внимание, что по умолчанию файл settings.py, созданный с помощью команды django-admin.py startproject, уже включает в себя  'django.contrib.auth' and 'django.contrib.contenttypes'. Если ваш INSTALLED_APPS уже сдержит соответствующие записи, можете сразу запускать команду manage.py syncdb. Вы также можете повторно выполнить эту команду столько раз, сколько вам потребуется - каждый раз она будет производить установку только тех пакетов, которые вам нужны.

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

На этом установка завершается.

Далее в этом месте следует описание классов models.User и models.UserManager, которые я опускаю, поскольку на мой взгляд там все понятно и без перевода...

django, python, перевод

Previous post Next post
Up