我希望在其第二段中捕获包含+
符号的网址。
如果它不包含该字符,则应该完全忽略该规则。
我正试图用constraints这样做:
get ":topic/:cities", to: "cities#show", constraints: {cities: /.*\+.*/}
但不幸的是,上面的代码会覆盖并捕获针对此单段网址的请求:
get ":topic", to: "topics#show"
为什么这样,我做错了什么?
其次,有没有更好的方法来完成routes.rb
中的上述条件情况?
答案 0 :(得分:0)
您的show动作包含id,因此您的约束正则表达式也会捕获它。将约束正则表达式更改为[a-z]+\+?[a-z]+
。希望有所帮助。