快速提问,
我有一些从StandardError扩展的ruby类,如:
class NotAuthorized < StandarError
end
我只使用此类来引发像这样的控制器中的异常
class SomeController < ApplicationController
before_filter :is_admin!
protected
def is_admin!
raise NotAuthorized if ...
end
end
因为NotAuthorized类不是模型,所以我觉得它不应该在模型文件夹下。也不是控制器,虽然它只服务于控制器。 你通常把这类课程放在哪里?
答案 0 :(得分:2)
因为你没有谈到你正在使用的rails的版本,我将指的是rails4。
从rails 3开始(我认为)app
下的每个文件夹都会自动加载。考虑到这一点,只需将其放置在所属的位置app/exceptions
app/worker
app/whetever
。
Authorization::NotAuthorized
。
所以在我的情况下,会有一个名为Authorization
的问题,它包含此错误类。