在Rails中显示URL错误

时间:2012-11-24 06:35:03

标签: ruby-on-rails-3

我正在使用URI.parse解析Rails控制器中的URL,即

URI.parse(user_URL)

当用户输入%等内容时,网页会引发错误

bad URI(is not URI?): %

并显示错误页面。

相反,我希望它转到我的页面,上面写着“您的网址%无效”。有可能吗?

1 个答案:

答案 0 :(得分:2)

对于网址无效的情况,只需将parse调用包裹在begin / end块中rescue

begin
  URI.parse(user_URL)
  ... do some stuff ...
rescue URI::InvalidURIError
  redirect_to :invalid_url_page, :url => user_URL
end

然后在您的invalid_url_page控制器操作(或您调用该操作的任何操作)中,您可以使用params[:url]访问无效网址。在与该操作相关联的视图中,您可以显示消息"您的URL%无效"用:

Your URL <%= params[:url] %> is not valid.