使用重定向时,没有名为django.contrib.auth的模块
在尝试使用使用重定向时,没有名为django.contrib.auth的模块,django,redirect,importerror,Django,Redirect,Importerror,在尝试使用django.shortcuts重定向函数和尝试使用以下两种方法时,我都会得到ImportError“No module named django.contrib.auth”: (r'^logout/$', 'django.contrib.auth.views.logout', {'next_page': '/'}), 我想这不可能是巧合,我遇到这个错误的唯一地方是页面被重定向的地方,但可能是。我知道用户实际上并没有注销,所以错误发生在您访问任何重定向代码之前 下面是我的URL.py
django.shortcuts
重定向
函数和尝试使用以下两种方法时,我都会得到ImportError“No module named django.contrib.auth”
:
(r'^logout/$', 'django.contrib.auth.views.logout', {'next_page': '/'}),
我想这不可能是巧合,我遇到这个错误的唯一地方是页面被重定向的地方,但可能是。我知道用户实际上并没有注销,所以错误发生在您访问任何重定向代码之前
下面是我的URL.py文件
import django.contrib.auth.views
from django.conf.urls.defaults import *
import django.contrib.auth
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('karma.views',
(r'^$', 'homepage'),
(r'^logout/$', 'django.contrib.auth.views.logout', {'next_page': '/'}),
(r"^opportunities/nearby$", 'draw_map'),
(r'^admin/', include(admin.site.urls)),
url(r'', include('social_auth.urls')),
(r'^profile/', include('karmup.profile.urls')),
)
您在
urlpatterns
中混淆了URL前缀
urlpatterns = patterns('karma.views',
(r'^$', 'homepage'),
(r'^logout/$', 'django.contrib.auth.views.logout', {'next_page': '/'}),
(r"^opportunities/nearby$", 'draw_map'),
)
Django尝试查找相对于给定URL前缀的视图,在您的例子中是“karma.views”
。在该模块中,没有“django.contrib.auth.views.logout”,因此您将获得ImportError
将注销URL移动到第二个块,例如:
urlpatterns += patterns('',
(r'^logout/$', 'django.contrib.auth.views.logout', {'next_page': '/'}),
)
这应该可以解决您的问题。完整的url配置是什么?你有明确的目标吗?