【问题标题】:Django url pathing, home url always overwriting path('', views.home, name='home')Django url 路径,home url 总是覆盖路径('',views.home,name='home')
【发布时间】:2020-04-08 14:32:26
【问题描述】:
from django.urls import path 
from . import views

urlpatterns = [
    path('signup/', views.signup, name='signup'),  
    path('', views.home, name='home'),

]

这是我称为时间表的 URL 代码

from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('signup/' , include('timetable.urls')),
    path('', include('timetable.urls')),
]

这是主要 urls.py 的代码

所以我知道对另一个 url.py 的调用就像我取出 '' (home) URL 一样,它会重定向到正确的 URL(我拥有的视图)但是如果我有 home URL它总是直接进入那个 URL,有没有什么方法可以像反应一样,我可以做 Exact 或者你们知道任何简单的解决方案

【问题讨论】:

  • 哪些实际 url 没有将您引导到正确的视图,它们应该重定向到哪些视图?或者安装django-extensions 并使用show_urls 命令。
  • 实际上您添加了两次 signup/ 。相当于把它从根目录或应用程序中的url中删除,它会起作用。

标签: python django django-urls


【解决方案1】:

它的配置方式,127.0.0.1:8000/127.0.0.1:8000/signup/ 将转到 views.home127.0.0.1:8000/signup/signup/ 将转到 views.signup。从主 urls.py 文件中删除 'signup/' 路径,它应该可以按预期工作。

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('timetable.urls')),
]

【讨论】:

  • 感谢您花时间帮助我的朋友!就是这样!
猜你喜欢
  • 2018-06-26
  • 2020-01-05
  • 1970-01-01
  • 2020-05-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-07
相关资源
最近更新 更多