为什么我的Django URL没有抓住正确的方法?

时间:2016-03-18 09:50:24

标签: django

我去了{ "failCount" : 1, "skipCount" : 15, "totalCount" : 156, "childReports" : [ { "result" : { duration : 0.97834, empty : false, suites : [{ cases : [ { "age" : 0, "status" : "Passed" }, { "age" : 15, "status" : "Passed" }, { "age" : 3, "status" : "failed" } ]} ] } }] } 网址时遇到问题:

django

没关系,视图按预期运行,/cars/my_town/my_office/ town="my_town"

当我去:

office_name="my_office"

我收到错误。 当我在我的观点中打印变量时,我得到:

/car/my_town/my_office/my_var1/ town :"my_town/my_office"

我的观点如下:

office_name:"my_var1"

我的网址:

def ListingCars(request,town,office_name,var1=None) :

解决......这不是一个解决问题的问题,而是一个myfault问题;)我没有在我的标签名称网址上看到“ç”...导致问题......请求帮助我清理我的正则表达和抱歉

1 个答案:

答案 0 :(得分:1)

\W 不是单词,它会匹配斜杠,你很可能只是省略它并使用\w,虽然它不清楚你的网址应该匹配什么,如果它是slug,那么你最有可能需要[\w-]+

^cars/(?P<town>[\w-]+)/(?P<office_name>[\w-]+)/$
^cars/(?P<town>[\w-]+)/(?P<office_name>[\w-]+)/(?P<var1>[\w-]+)/$

实际发生的是你的第一个正则表达式匹配你的网址,所以它永远不会使用第二个,所以很可能你也可以通过切换这些网址的顺序来解决这个问题,所以第二个是第一个,但我不建议这样做