Django忽略url参数中的字符

Dar*_*ech 0 django django-urls

嗨,我有一个像这样的网址模式:

url(
    r'^project_info/(?P<product>\w+)/$',
    'tool.views.ProjectInfo',
    name='project_info'
),
Run Code Online (Sandbox Code Playgroud)

这适用于普通字符串,但如果我想捕获像'my-product'这样的东西就会失败.

我试过像这样逃避破折号:

url(
    r'^project_info/(?P<product>\-\w+)/$',
    'tool.views.ProjectInfo',
    name='project_info'
),
Run Code Online (Sandbox Code Playgroud)

但没有快乐.

任何帮助将非常感激.

Tho*_*rzl 6

这应该适合你

url(
    r'^project_info/(?P<product>[-\w]+)/$',
    'tool.views.ProjectInfo',
    name='project_info'
),
Run Code Online (Sandbox Code Playgroud)