redirect () не указывает на правильное представление - PullRequest
0 голосов
/ 25 октября 2019

Я пытаюсь использовать метод перенаправления redirect() в мое представление index при успешной отправке формы, найденной в моем представлении register. У меня есть следующее urls.py:

from django.contrib import admin
from django.urls import path
from users import views as usersViews

urlpatterns = [
    path('admin/', admin.site.urls),

    path('', usersViews.index, name = 'index'),

    path('register/', usersViews.register, name = 'regsister'),

]

и следующее views.py:

from django.shortcuts import render, redirect
from .forms import RegistrationForm
from django.http import HttpResponse

# Create your views here.

def index(request):
    return HttpResponse('signed up')

def register(request):
    if request.method == 'POST':
        form = RegistrationForm(request.POST) 
        if form.is_valid():
            form.save() # save form? to db?
            username = form.cleaned_data.get('username')
            email = form.cleaned_data.get('email')
            return redirect("index") #this statement is not working
    else:
        form = RegistrationForm() 
    return render(request, 'users/registration.html', {'registrationForm':form})

При отправке формы меня перенаправляют на "/register/index.html"а не" / "(страница указателя). Кто-нибудь может помочь с этим?

1 Ответ

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

Попробуй обратное:

from django.urls import reverse
return redirect(reverse('app_name:view_name'), {'registrationForm':form})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...