【发布时间】:2014-03-01 05:39:35
【问题描述】:
我在 helpers api_helper 文件夹中有一个模块 ApiHelper,这引起了一些混乱。在 controllers/api/v1 我有两个控制器,它们都有
include ApiHelper
确切的错误是:
/Users/WEF6/.rvm/gems/ruby-1.9.3-p448/gems/activesupport-4.0.1/lib/active_support/dependencies.rb:461:in `load_missing_constant': Circular dependency detected while autoloading constant APIHelper (RuntimeError)
我认为这个问题正在发生,因为我有一个使用 rails-api 像这样设置的 api_controller:
class ApiController < ActionController::API
我的普通应用程序控制器是这样设置的
class ApplicationController < ActionController::Base
api 控制器继承自 ApiController,而我的普通 App 控制器继承自 ApplicationController。
或者它可能是更简单的东西;想法?
【问题讨论】:
-
你解决了吗?
-
不,我最终将我想成为助手的方法移动到单独的模块中,并将它们放在关注文件夹中。例如,Presentable、Decryptable 和 Parsable 模块。
-
在我的情况下,它是一个名为
TableHelper的助手,只是将名称更改为MyTableHelper,一切都很好。
标签: ruby-on-rails api rails-api