Django:当传递一个带有 - 的字符串时,后面的任何东西 - 都会被丢弃
Django: When passing a string with -,anything behind - get droped
我尝试在 django 上传递一个字符串参数,但是当我尝试它时,后面的任何东西都被丢弃了。
我在 Python3.My OS 上使用 Django 2.1.7 Mac OS Mojave 10.14.
我正在访问 http://127.0.0.1:8000/ruleset/a096abd9-3855-4a91-9336-1d7e66aa5323
def ruleSet(request,id_):
return HttpResponse(id_)
urlpatterns = [
path('admin/', admin.site.urls),
re_path(r'ruleset/(\w+)', view.ruleSet)
]
我除了得到a096abd9-3855-4a91-9336-1d7e66aa5323
我得到了 a096abd9
而不是
这是因为“\w”不匹配“-”字符。
你需要编写匹配uuid的正则表达式。
试试下面
urlpatterns = [
path('admin/', admin.site.urls),
path('ruleset/<str:id_>', view.ruleSet)
]
查看以下文档以获取有关 Django URL 模式的信息
https://www.webforefront.com/django/regexpdjangourls.html
我尝试在 django 上传递一个字符串参数,但是当我尝试它时,后面的任何东西都被丢弃了。
我在 Python3.My OS 上使用 Django 2.1.7 Mac OS Mojave 10.14.
我正在访问 http://127.0.0.1:8000/ruleset/a096abd9-3855-4a91-9336-1d7e66aa5323
def ruleSet(request,id_):
return HttpResponse(id_)
urlpatterns = [
path('admin/', admin.site.urls),
re_path(r'ruleset/(\w+)', view.ruleSet)
]
我除了得到a096abd9-3855-4a91-9336-1d7e66aa5323
我得到了 a096abd9
而不是
这是因为“\w”不匹配“-”字符。
你需要编写匹配uuid的正则表达式。
试试下面
urlpatterns = [
path('admin/', admin.site.urls),
path('ruleset/<str:id_>', view.ruleSet)
]
查看以下文档以获取有关 Django URL 模式的信息 https://www.webforefront.com/django/regexpdjangourls.html