Аутентификация Django - неправильно перенаправляет URL к странице входа в систему

Когда пользователь не зарегистрирован, я пытаюсь ввести области сайта для аутентифицируемых пользователей, только я должен быть перенаправлен на мой сайт входа в систему с ?next= и здесь мой LOGIN_REDIRECT_URL от настроек. Но вместо /users/login в моей строке поиска /accounts/login отображен. Что я должен изменить для получения правильного URL?

настройки:

AUTH_PROFILE_MODULE = 'accounts.UserProfile'
LOGIN_REDIRECT_URL = '/user/profile/'

URL проекта:

import accounts.urls as regUrls

urlpatterns = patterns("",
                        (...)                     
                        (r'^user/', include(regUrls)),                       
                        )

приложение учетных записей urls.py:

urlpatterns = patterns('',
                       url(r'^profile/$', profile_edit , name='user_profile'),
                       url(r'^friends_list/$', friends_list),
                       (r'', include('accounts.auth_urls')),
                       )

и учетные записи auth_urls.py (которые являются просто URL для contrib.auth):

from django.conf.urls.defaults import *
from django.views.generic.simple import direct_to_template
from django.contrib.auth import views as auth_views

    urlpatterns = patterns('',
                           url(r'^login/$',
                               auth_views.login,
                               {'template_name': 'user/login_logout_register/login.html'},
                               name='auth_login'),
                           url(r'^logout/$',
                               auth_views.logout,
                               {'template_name': 'user/login_logout_register/logout.html'},
                               name='auth_logout'),                     
                           url(r'^password/change/$',
                               auth_views.password_change,
                               {'template_name': 'user/login_logout_register/password_change_form.html'},
                               name='auth_password_change'),
                           url(r'^password/change/done/$',
                               auth_views.password_change_done,
                               {'template_name': 'user/login_logout_register/password_change_done.html'},
                               name='auth_password_change_done'),                      
                           url(r'^password/reset/$',
                               auth_views.password_reset,
                               {'template_name': 'user/login_logout_register/password_reset_form.html',
                               'email_template_name': 'user/login_logout_register/password_reset_email.html'},
                               name='auth_password_reset'),                     
                           url(r'^password/reset/confirm/(?P<uidb36>[0-9A-Za-z]+)-(?P<token>.+)/$',
                               auth_views.password_reset_confirm,
                               {'template_name': 'user/login_logout_register/password_reset_confirm.html'},
                               name='auth_password_reset_confirm'),                     
                           url(r'^password/reset/complete/$',
                               auth_views.password_reset_complete,
                               {'template_name': 'user/login_logout_register/password_reset_complete.html'},
                               name='auth_password_reset_complete'),                     
                           url(r'^password/reset/done/$',
                               auth_views.password_reset_done,
                               {'template_name': 'user/login_logout_register/password_reset_done.html'},
                               name='auth_password_reset_done'),
                           )

Если я должен вставить что-нибудь больше, просто сказать мне.

17
задан tom_pl 29 July 2010 в 23:31
поделиться

1 ответ

Вам также необходимо указать LOGIN_URL в настройках:

LOGIN_URL = '/user/login'
31
ответ дан 30 November 2019 в 12:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: