auth

Пользователи, права, авторизация.

Права задаются в виде app_name.action_model.

Есть несколько видов действий:

  • add - добавление

  • change - изменение

  • delete - удаление

  • view - просмотр

но можно создать и свои permissions.

По умолчанию, в контекст шаблонов добавляются переменные user и perms.

  • user - пользователь

    {% if user.is_authenticated %}
    {% endif %}
    
  • perms - права, которыми обладает пользователь

    {% if perms.good.add_good %}
    {% endif %}
    

Конфигурирование

authenticate

django.contrib.auth.authenticate(username, password)

Аутентификация пользователя, если пользователя нет вернет None.

user = authenticate(
    username=form.cleaned_data['username'],
    password=form.cleaned_data['password'],
)

login

django.contrib.auth.login(request, user)

Авторизация пользователя

login(request, user)