Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

212
Views
django - redirect to a page after registering a user

After a user successfully registers an account (creates a username and password) the webpage returns a blank registration form.

I would like to redirect to the 'landingpage' url after successful registration.

Here is the html form:

<form method="post" action="{% url 'register' %}">
{% csrf_token %}
  <table>{{ form.as_table }}</table>
    <input type="submit" value="register" />
    <input type="hidden" name="next" value="{{ next }}" />
</form>

and urls.py:

from django.views.generic.edit import CreateView
from django.contrib.auth.forms import UserCreationForm

urlpatterns = [
url('^accounts/register/', CreateView.as_view(
        template_name='registration/register.html',
        form_class=UserCreationForm,
        success_url='landingpage'
), name='register'),
url('^accounts/', include('django.contrib.auth.urls')),
url(r'^$', views.landingpage, name='landingpage'), ]

Should the success_url='landingpage' redirect to the landingpage url?

How do I redirect to the landingpage url after a successful registration?

about 4 years ago · Santiago Trujillo
1 answers
Answer question

0

You are looking for the reverse_lazy function, it is included inside the django.core.urlresolvers and must be imported using from django.core.urlresolvers import reverse_lazy

The code should be similar to:

from django.core.urlresolvers import reverse_lazy
# more code goes here
    url('^accounts/register/', CreateView.as_view(
        template_name='registration/register.html',
        form_class=UserCreationForm,
        success_url=reverse_lazy('landingpage')  # note the usage of reverse_lazy here 
    ), name='register'),
# also here

That function will traverse your urls and make the proper redirection after success registration.

Take a look at the django docs for more options: https://docs.djangoproject.com/en/1.11/ref/urlresolvers/#reverse-lazy

about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!