Работал ли с аутентификацией на Django
Python
Junior
Без компании
Работал ли с аутентификацией на Django
Ответы
Да, работал. В Django есть встроенная система аутентификации `django.contrib.auth`. Она включает модели `User`, группы, разрешения, формы для входа/регистрации и middleware для управления сессиями.
**Пример аутентификации:**
```
from django.contrib.auth import authenticate, login
def login_view(request):
if request.method == 'POST':
username = request.POST['username']
password = request.POST['password']
user = authenticate(request, username=username, password=password)
if user is not None:
login(request, user)
return redirect('home')
else:
return render(request, 'login.html', {'error': 'Invalid credentials'})
return render(request, 'login.html')
```
**Дополнительно:**
- Можно использовать `@login_required` для защиты views.
- Для REST API часто применяют `django-rest-framework` с `TokenAuthentication` или `JWT`.
- Кастомные модели пользователя через `AbstractUser` или `AbstractBaseUser`.