Как я могу использовать `return HttpResponseRedirect(reverse("some-path", args=[slug]))` с user_agent?

Я ищу способ использовать (в views.py)

return HttpResponseRedirect(reverse("some-path", args=[slug]))

где я могу определить, на какой шаблон будет перенаправлен пользователь в зависимости от устройства (с помощью user_agent). Проблема связана с представлением на основе класса с методами get и post. В моей функции post у меня есть эта нерешенная проблема в моем return утверждении.

Я нигде не смог найти ответ: какой лучший подход для этой ситуации?

Проблема в том, что перенаправление использует только url.py и я не знаю, где и как я могу написать if утверждение об устройствах, как в обычной функции просмотра:

if user_agent.is_pc:
        return render(
            request,
            'dev/registration-success_pc_tablet.html',
        {
            'my_email': my_email
        })

elif user_agent.is_mobile:
        return render(
            request,
            'dev/registration-success_mobile.html',
        {
            'my_email': my_email
        })

elif user_agent.is_tablet:
        return render(
            request,
            'dev/registration-success_pc_tablet.html',
        {
            'my_email': my_email
        })

Я установил MIDDLEWARE, INSTALLED_APPS для user_agent. Проблема только в этом конкретном случае, который я описал в своем вопросе.

Код, над которым я бьюсь (последняя строка):

def post(self, request, slug):
        
        comment_form = CommentForm(request.POST)
        user_feedback = UserFeedback(request.POST) 
        user_agent = get_user_agent(request)

        post = EssayCls.objects.get(slug=slug)
        
        context = {
          "post": post,
          "post_tags": post.tags.all(),
          "comment_form": comment_form,
          'comments': post.comments.all().order_by("-id")
        }
        
        if user_feedback.is_valid(): 
            user_email = user_feedback.cleaned_data['email']
            send_me_message, was_created = SendMeMessage.objects.get_or_create(email=user_email)
            post.guest.add(send_me_message) 
            
            return redirect('confirm-registration', slug=slug)

        if comment_form.is_valid():
          comment = comment_form.save(commit=False)
          comment.post = post
          comment.save()

          return HttpResponseRedirect(reverse("some-path", args=[slug]))  
Вернуться на верх