перенаправить аутентифицированного пользователя на Createview в Django - PullRequest
2 голосов
/ 25 сентября 2019

Я использовал CreateView для регистрации в своем проекте и хочу запретить аутентифицированному пользователю доступ к URL-адресу реестра, вместо этого перенаправьте его на другую страницу.

Может кто-нибудь сказать мне, как это сделать?Вот мой код просмотра регистра:

class RegisterUserView(CreateView):
model = ChatUser
template_name = 'login/registration_page.html'
form_class = UserForm
second_form_class = ProfileForm

1 Ответ

0 голосов
/ 25 сентября 2019

Вы можете использовать UserPassesTestMixin для этого:

class RegisterUserView(UserPassesTestMixin, CreateView):
    model = ChatUser
    template_name = 'login/registration_page.html'
    form_class = UserForm
    second_form_class = ProfileForm
    permission_denied_message = _("You are already registered!")

    def test_func(self):
        return self.request.user.is_anonymous
...