Здравствуйте! Помогите пожалуйста разобраться и направить на путь истенный.
Как перенаправить неавторизованного пользователя на определенную странику?
К примеру неавторизованный пользователь заходит по адресу
/admin/ , нужно данного пользователя перенаправить на
/admin/login/. В случаи если он авторизован то спокойно переходит по адресу
/admin/.
P.S. Была поставлена задача создать свою панель для админки не использую ту, которая есть из коробки в Джанго. Внизу создал кастомную форму для страницы login, которая наследует от AuthenticationForm.
urls.py:urlpatterns = [
# Admin Dashboard
url(r'^admin/$', DashboardView.as_view()),
# Admin Login
url(r'^admin/login/$',
authentication_views.login,
{
'template_name': 'administration/login.html',
'authentication_form': AdminAuthenticationForm
},
name='login'),
]
forms.py:class AdminAuthenticationForm(AuthenticationForm):
"""
A custom authentication form used in the administration app.
"""
error_messages = {
'invalid_login': ("Ошибка! Проверьте ваш Логин или Пароль администратора еще раз."),
}
required_css_class = 'required'
def confirm_login_allowed(self, user):
if not user.is_active or not user.is_staff:
raise forms.ValidationError(
self.error_messages['invalid_login'],
code='invalid_login',
params={'username': self.username_field.verbose_name}
)