查找匹配的Controller操作Helper的NameError异常

时间:2015-05-15 19:46:17

标签: ruby-on-rails activesupport

我正在阅读active_support文档,并说它无论何时调用控制器操作,rails都会搜索相应的帮助程序类。如果没有这样的类,则抛出,捕获并可能重新抛出异常。

我很好奇这个(in)有效率如何,为了不在我的代码背景中抛出异常,我应该只有空助手类吗?

我没有尝试进行任何类型的过早优化,我只是在研究rails的内部结构,并且很好奇为什么他们会这样做以便它总是会抛出异常。没有帮助者定义。

以下是相关文档: http://guides.rubyonrails.org/active_support_core_extensions.html#extensions-to-nameerror

任何见解和更多细节都将不胜感激。

谢谢!

1 个答案:

答案 0 :(得分:2)

我将从一个“如意思维”的地方回答,而不是来自任何有关Rails内部代码的特定知识。我知道(并且喜欢)Rails是由忙碌的开发人员构建的:它是由hates repeating himself的人设计的,具有DRY代码和合理默认值的精神。

因此,考虑到设置空的帮助程序类只是为了使Rails启动代码更有效,这听起来是个可怕的想法。这与Rails建立的意图非常相反,我认为你可以指望社区坚持这些意图。