Python 在Django中使用接受斜杠作为参数一部分的URL

Python 在Django中使用接受斜杠作为参数一部分的URL,python,django,Python,Django,Django中是否有方法接受由“/”分隔的“n”参数(正斜杠) 我想这可能行得通,但行不通。Django仍然将前斜杠识别为分隔符 (r'^(?P<path>[-\w]+/)$', 'some.view', {}), (r'^(?P[-\w]+/)$,'some.view',{}), 当然,Django可以接受任何可以用正则表达式描述的URL,包括前缀后跟“/”的URL,后跟由“/”分隔的可变段数。确切的正则表达式将取决于您想要接受的内容-但Django中的一个示例是/admin U

Django中是否有方法接受由“/”分隔的“n”参数(正斜杠)

我想这可能行得通,但行不通。Django仍然将前斜杠识别为分隔符

(r'^(?P<path>[-\w]+/)$', 'some.view', {}),
(r'^(?P[-\w]+/)$,'some.view',{}),

当然,Django可以接受任何可以用正则表达式描述的URL,包括前缀后跟“/”的URL,后跟由“/”分隔的可变段数。确切的正则表达式将取决于您想要接受的内容-但Django中的一个示例是/admin URL,它解析视图中URL的后缀。

当然,Django可以接受任何可以由正则表达式描述的URL,包括前缀后跟“/”后跟以“/”分隔的可变段数的URL。确切的正则表达式将取决于您想要接受的内容-但Django中的一个示例是/admin URL,它解析视图中URL的后缀。

将正确的URL添加到您的URL模式:

# ...
("^foo/(.*)$", "foo"), # or whatever
# ...
并在你看来进行处理,就像阿尔伯特说的:

fields = paramPassedInAccordingToThatUrl.split('/')

将正确的url添加到您的url模式:

# ...
("^foo/(.*)$", "foo"), # or whatever
# ...
并在你看来进行处理,就像阿尔伯特说的:

fields = paramPassedInAccordingToThatUrl.split('/')

接受参数是什么意思?不起作用的原因是[-\w]+包含连字符和\w(字母数字+下划线)。您需要扩展您的条件以包含一个/,可以通过在字符类中添加/或(根据Ian的回答)使用更自由的开始,例如。*接受参数是什么意思?不起作用的原因是[-\w]+包括连字符和\w(字母数字+下划线)。您需要扩展您的标准以包括/,或者通过向character类添加/或者(根据Ian的回答)使用更自由的开始,例如*