2013-10-31 5 views
0

코드는 내가 장고의 기본 로그인과 로그 아웃 모듈을 사용할뷰가 존재하지 않습니다

#urls.py 

from django.conf.urls import patterns, url 
from employees import views 
from schdeules import views 
urlpatterns = patterns('', 
url(r'^$', views.home, name='home'), 
url(r'^accounts/logout/$', 'django.contrib.auth.views.logout'), 
url(r'^accounts/login/$', 'django.contrib.auth.views.login', {'template_name': 'admin/login.html'}), 
url(r'^accounts/$', 'django.views.generic.simple.redirect_to', {'url': '/'}), 
url(r'^accounts/profile/$', 'django.views.generic.simple.redirect_to', {'url': '/'}), 
) 

#views.py 
# Create your views here. 
from django.contrib.auth.decorators import login_required 
from django.shortcuts import render 
@login_required 
def home(request): 
    welecome = 'hai welcome to opas' 
    context = {'temp_var': welecome} 
    return render(request, 'schdeules/home.html') 

and iam getting an error 

Exception Type: ViewDoesNotExist at /opas/ 
Exception Value: Could not import django.views.generic.simple.redirect_to. Parent module django.views.generic.simple does not exist. 

입니다. 성공적으로 로그인 한 경우 홈 페이지로 리디렉션하고 싶습니다. 미리 감사드립니다.

답변

0

함수 기반 일반 뷰 redirect_to은 장고 1.3에서는 더 이상 사용되지 않으며 장고 1.5에서는 제거되었습니다. 대신 클래스 기반 제네릭 뷰 RedirectView을 사용하십시오. 당신이 /accounts//accounts/profile/에 대한 URL 패턴을 포함 할 필요가 없습니다

from django.views.generic.base import RedirectView 

urlpaterns = ('', 
... 
    url(r'^accounts/$', RedirectView.as_view(url='/')), 
    url(r'^accounts/profile/$', RedirectView.as_view(url='/')), 
) 

참고. 사용자가 로그인 한 후에 홈 페이지로 바로 리디렉션되도록 당신은 당신의 설정에서 LOGIN_REDIRECT_VIEW을 설정하는 것이 더있을 수 있습니다.

LOGIN_REDIRECT_VIEW = 'home' # using a named url pattern requires Django 1.5 or later 
+0

이있는 내가 응용 프로그램 urls.py에서 테라 헤르츠 code.either을 추가하거나 urls.py를 project urls.py – ram

+0

응용 프로그램 urls.py에 thz 코드를 추가했습니다. 로그인 인증없이 홈 페이지를 표시합니다. – ram

+0

'urls.py'에 해당 url 패턴을 포함 할 수 있어야합니다. 작동하지 않으면 아마 프로젝트의'urls.py'에 넣는 것이 가장 쉽습니다. 홈 페이지가 표시되면 사용자가 이미 로그인했거나 홈 페이지를 표시하는보기가'login_required' 데코레이터를 사용하고 있지 않습니다. 'LOGIN_REDIRECT_VIEW'는 설정이므로'settings.py'에 속합니다. – Alasdair

관련 문제