Python: ‘module’ object has no attribute ‘logout_view’
我目前正在尝试实现注销到我的 django 站点的功能,但在虚拟环境中尝试使用命令 python manage.py runserver 时出现以下错误:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | (ll_env) C://Users//me//Desktop//learning_log>python manage.py runserver Performing system checks… Unhandled exception in thread started by <function wrapper at 0x0000000006693BA8> | 
这是我在 learning_log////users 目录中的 urls.py 文件:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 | from django.conf.urls import url from django.contrib.auth.views import login from . import views urlpatterns = [ | 
对上述文件的最新补充是:
| 1 2 |     # Logout page url(r‘^logout/$’, views.logout_view, name=‘logout’), | 
以下代码作为最新添加添加到了我的 views.py 文件的末尾:
| 1 2 3 4 5 6 7 8 | from django.http import HttpResponseRedirect from django.core.urlresolvers import reverse from django.contrib.auth import logout def logout_view(request): | 
这是我的 base.html 文件:
| 1 2 3 4 5 6 7 8 9 10 11 12 | <p><center>[wp_ad_camp_2]</center></p><p> Learning Log – Topics – {% if user.is_authenticated %} Hello, {{ user.username }}. log out {% else %} log in {% endif %} </p> {% block content %}{% endblock content %} | 
这是对我的 base.html 文件的最新添加:
| 1 |     log out | 
在上述添加之前,代码运行良好。知道我这可能很容易解决,但是有人有解决这个问题的方法吗?我目前正在使用 Django 1.11.7 和 Python 2.7.14。
当您在 
中使用相对导入时
| 1 | from . import views | 
这相当于
| 1 | from users import views | 
但是,听起来您的 
| 1 | from learning_logs import views | 
请注意,Django 有一个 
| 1 2 3 | from django.contrib.auth.views import logout
 url(r‘^logout/$’, logout, name=‘logout’), | 
然后在你的设置中设置 
| 1 | LOGOUT_REDIRECT_URL = ‘learning_logs:index’ | 
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/267960.html
