Question

django-registration 'reset' doesn't get processed

Using django-registration 1.0 under Django 1.6 . Everything (register, login, logoff, change) works as it should except "reset" which just redirects to the login form.

My urls.py looks like this :

urlpatterns = patterns('',
    url(r'^spellweb/', include('spellweb.urls', namespace="spellweb")),
    url(r'^admin/', include(admin.site.urls)),
    url(r'^accounts/', include('registration.backends.default.urls')),
)

And the url associated with the 'Reset' link is :

http://localhost:8000/accounts/password/reset/

When that url is presented to the server a 302 is returned which sends the browser off to the login page like this :

[24/Feb/2014 22:55:00] "GET /accounts/password/reset/ HTTP/1.1" 302 0
[24/Feb/2014 22:55:01] "GET /accounts/login/?next=/accounts/password/reset/ HTTP/1.1" 200 1795
[24/Feb/2014 22:55:01] "GET /style.css HTTP/1.1" 302 0
[24/Feb/2014 22:55:01] "GET /accounts/login/?next=/style.css HTTP/1.1" 200 1780
[24/Feb/2014 22:55:01] "GET /accounts/login/?next=/favicon.ico HTTP/1.1" 200 1782

Just to make myself entirely clear the problem isn't just that the reset form isn't processed - the system won't even serve a 'reset' form .

So ... I'd be greatful if someone would suggest why this might be happening and/or confirm that they get some other result using Django 1.6/django-registration 1.0.

Thanks


More information pertinent to Mario Gudelj: Yes I believe I am using the auth_urls you reference. The reason I say this is that the 'registration.backends.default.urls' referenced within my urls.py in turn references 'registration.auth_urls' . I don't know why that's not producing the effect I would expect. I would like to be sure that the url object within that auth_urls is being used but I can't find a way of establishing which django.conf.urls.patterns instance is active for any given request - that would be great if I could find a way of doing that.


More information pertinent to comment of Alasdair: The ROOT_URLCONF points at the urls.py shown above which in its entirety is as follows:

from django.conf.urls import patterns, include, url
# Uncomment the next two lines to enable the admin:
from django.contrib import admin
admin.autodiscover()

#url(r'^accounts/', include('auth_urls')),

urlpatterns = patterns('',
    url(r'^spellweb/', include('spellweb.urls', namespace="spellweb")),
    url(r'^admin/', include(admin.site.urls)),
    url(r'^accounts/', include('registration.backends.default.urls')),
)
~

The spellweb.urls referenced there is as follows (nothing very much due to trying to get registration working before doing anything else) ...

from django.conf.urls import patterns, url

from spellweb import views

urlpatterns = patterns('',
    url(r'^$', views.IndexView.as_view(), name='index'),
)
#    url(r'^(?P<pk>\d+)/$', views.DetailView.as_view(), name='detail'),
#    url(r'^(?P<pk>\d+)/results/$', views.ResultsView.as_view(), name='results'),
~

The registration.backends.default.urls refernenced there is as per :https://bitbucket.org/ubernostrum/django-registration/src/8f242e35ef7c004e035e54b4bb093c32bf77c29f/registration/backends/default/urls.py?at=default and that in turn references : https://bitbucket.org/ubernostrum/django-registration/src/8f242e35ef7c004e035e54b4bb093c32bf77c29f/registration/auth_urls.py?at=default

No correct solution

OTHER TIPS

Are you using https://bitbucket.org/ubernostrum/django-registration/src/8f242e35ef7c004e035e54b4bb093c32bf77c29f/registration/auth_urls.py?at=default?

It seems for that auth_urls.py has that URL and it's using Django's generic password_reset view from django.contrib.auth.views.

Make sure that you haven't changed the URL structure in that file and that this code is still in there:

url(r'^password/reset/$',
                           auth_views.password_reset,
                           name='auth_password_reset'),

Seems like you have somehow managed to place login_required decorator around that view.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top