[英]The current path, didn't match any of these
所以我有下面的代碼在 django 1.8
from django.conf.urls import patterns, url
from account import views
from django.contrib.auth import views as auth_views
urlpatterns = patterns('',
url(r'^$', views.index, name='profile'),
url(r'^api/get_users/(?P<term>.*)', views.get_users),
url(r'^leaderboard/(?P<board_type>.*)', views.leaderboard),
url(r'^admintools/(?P<action>.*)', views.admintools),
)
我將其修改為 django 2.2
from django.conf.urls import url
from . import views
from django.urls import re_path,path
from django.contrib.auth import views as auth_views
urlpatterns = [
path('', views.index, name='profile'),
path('api/get_users/(?P<term>.*)', views.get_users),
path('leaderboard/(?P<board_type>.*)', views.leaderboard),
path('admintools/(?P<action>.*)', views.admintools),
]
我收到錯誤當前路徑帳戶/管理工具,與這些都不匹配
這個問題的“簡單解決方案之一”是,使用re_path(...)
而不是path()
from django.urls import re_path
from account import views
urlpatterns = [
re_path(r'^$', views.index, name='profile'),
re_path(r'^api/get_users/(?P<term>.*)', views.get_users),
re_path(r'^leaderboard/(?P<board_type>.*)', views.leaderboard),
re_path(r'^admintools/(?P<action>.*)', views.admintools),
]
re_path(...)
函數會做與Django url(...)
一樣的事情。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.