如何解决如何在 django url 中捕获包含一个或多个正斜杠的字符串
我的代码看起来像这样
from django.urls import path
from. import views
app_name ='graduates'
urlpatterns = [
.
.
path('status_detail/<str:id>/',views.status_detail,name='status_detail'),]
views.py:
def status_detail(request,id):
return HttpResponse(id)
<a href=" {% url 'graduates:status_detail' graduate.id %}" class="btn text-secondary "></a>
然后我想在我的代码中的某个地方使用它
{{1}}
它适用于那些不包含正斜杠的字符串。 但我想将学生的 id 传递给看起来像这样的网址 A/ur4040/09、A/ur5253/09 等
请帮助我我该怎么做
解决方法
尝试将您的网址更改为正则表达式:
url(r'^status_detail/(?P<str:id>\w+)/',views.status_detail,name='status_detail')
如果 url
不起作用,因为您的网址具有相同的结构,请使用 re_path
:
re_path(r'^status_detail/(?P<str:id>\w+)/',name='status_detail')
不要忘记导入re_path
:
from django.urls import path,re_path,include
希望这能解决您的问题。
,我们可以使用 django 中可用的默认路径转换器
path('status_detail/<path:id>/',name='status_detail'),
path - 匹配任何非空字符串,包括路径分隔符“/”。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。