python从入门到实践第19章创建用户账户urls.py问题

caike 2018-02-01 02:09:34
根目录learning-log下的urls.py:(Django2.0)
from django.contrib import admin
from django.urls import path, include


urlpatterns = [
path('admin/', admin.site.urls),
path('users/',include('users.urls',namespace='users')),
path('', include('learning_logs.urls', namespace='learning_logs')),



在浏览器打开http://127.0.0.1:8000/admin/报错:
TypeError at /admin/'set' object is not reversible
Request Method: GET
Request URL: http://127.0.0.1:8000/admin/
Django Version: 2.0
Exception Type: TypeError
Exception Value: 'set' object is not reversible
Exception Location: C:\Python36\lib\site-packages\django-2.0-py3.6.egg\django\urls\resolvers.py in _populate, line 416
Python Executable: C:\Python36\python.exe
Python Version: 3.6.4
Python Path: ['E:\\python\\learning_log', 'C:\\Python36\\python36.zip', 'C:\\Python36\\DLLs', 'C:\\Python36\\lib', 'C:\\Python36', 'C:\\Users\\LIKE\\AppData\\Roaming\\Python\\Python36\\site-packages', 'C:\\Python36\\lib\\site-packages', 'C:\\Python36\\lib\\site-packages\\django-2.0-py3.6.egg', 'C:\\Python36\\lib\\site-packages\\pytz-2017.3-py3.6.egg']
Server time: Thu, 1 Feb 2018 03:35:39 +0000
Traceback Switch to copy-and-paste view


如果将urls.py中的path('users/',include('users.urls',namespace='users')),去掉,页面就正常了,看样子问题是在这条语句上,请问各位大侠,这个问题如何解决?还请指点,谢谢!
...全文
867 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
caike 2018-02-05
  • 打赏
  • 举报
回复
汗!果然!非常感谢!
caike 2018-02-02
  • 打赏
  • 举报
回复
上面的目录是一级的,前面的空格不知怎么没上去,又不能重新编辑
caike 2018-02-02
  • 打赏
  • 举报
回复
引用 1 楼 xpresslink 的回复:
在 /learning_log/users/urls.py 里面你加了 app_name = 'users' 这句了吧? 另外有点看不明白 path('', include('learning_logs.urls', namespace='learning_logs')) 为什么会加这句? 你能不能把目录结构发一下。
非常感谢您的回复! 在书上第393页下方第2点,包含应用程序users的URL,这里提到要将根目录下的urls.py加入url(...),但由于dango是2.0版本,所以这里换成了path,上面这一句是在第18章内容中加了这一句。 /learning_log/users/urls.py: from django.conf.urls import url from django.urls import path, re_path from django.contrib.auth.views import login from . import views app_name='users' urlpatterns={ path('login/', login, {'template_name':'users/login.html'}, name='login'), } learning_log |-- learning_log |-- learning_logs |-- like_env |-- users |-- db.sqlit3 |-- manage.py
混沌鳄鱼 2018-02-02
  • 打赏
  • 举报
回复
/learning_log/users/urls.py: urlpatterns={ path('login/', login, {'template_name':'users/login.html'}, name='login'), } 把 花括号 { } 改成 方括号 [ ] urlpatterns=[ path('login/', login, {'template_name':'users/login.html'}, name='login'), ] 这个是个list,明白么?
混沌鳄鱼 2018-02-01
  • 打赏
  • 举报
回复
在 /learning_log/users/urls.py 里面你加了 app_name = 'users' 这句了吧? 另外有点看不明白 path('', include('learning_logs.urls', namespace='learning_logs')) 为什么会加这句? 你能不能把目录结构发一下。

37,720

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧