【发布时间】:2016-07-10 13:39:00
【问题描述】:
我在 Sinatra 上,但我不明白如何处理我的问题:
当他尝试走错路时,我想“发送”以卷曲一条自定义消息。
卷曲http://localhost:port/blabla 这是一个错误 404,但我想向他发送“错误尝试其他路径”之类的内容
我试过这个:
before'/*' do
if (params[:splat].to_s =~ /path_i_want/) != 2
'wrong path'
end
end
或使用raise 404,但它不起作用。
你能帮帮我吗?
问候。
【问题讨论】:
-
为什么是
!= 2?您期望索引1和0中的字符是什么?你想让你的正则表达式匹配整个字符串还是只匹配一个子字符串?我问是因为使用正则表达式比较字符串更快。 -
是的,我应该使用比较而不是正则表达式。但我没有解决我的问题。我不知道该怎么做。
-
您是否考虑添加
puts params.inspect以调查 splat 是否真正捕获?
标签: ruby-on-rails ruby sinatra