这个控制器代码有什么作用?

时间:2014-01-08 08:46:35

标签: ruby-on-rails

我偶尔会遇到这种模式,但我不确定它是什么,或者如何谷歌。

class ApiController < ApplicationController
  class InvalidAppToken < RuntimeError ; end
  class InvalidUserToken < RuntimeError ; end
  ...
end

3 个答案:

答案 0 :(得分:3)

它会创建自定义错误。这样做可以引发个性化错误,然后挽救它们以更好地处理应用程序错误。

class MyController < ApiController
  begin
    unless DoSomething(params[:user_token])
      raise InvalidUserToken
      [...]
    end
  rescue InvalidUserToken
    # manage this error
  end
end

答案 1 :(得分:0)

这是一个很好的选项,用于搜索考虑了特殊符号的网络(大多数主要搜索引擎会忽略搜索中的特殊字符):

http://symbolhound.com/?q=ruby+%3C+runtimeerror

答案 2 :(得分:0)

它只是定义了自定义错误类型。可能有助于在工作流程中引发非常具体的错误。

Have a look at this book