首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >尝试重新打开引擎类时是否存在循环依赖?

尝试重新打开引擎类时是否存在循环依赖?
EN

Stack Overflow用户
提问于 2014-06-27 04:47:25
回答 2查看 344关注 0票数 0

我正在尝试在Rails中重新打开一个来自引擎的类。我做了以下工作:

代码语言:javascript
复制
module Xaaron
  ApiKey.class_eval do
     include Promiscuous::Publisher
     publish :xaaron_users_id, :api_key, :as => :ApiKey
  end
end

它位于:

代码语言:javascript
复制
  models/
    Xaaron/
      api_key.rb

这一切都在我的应用程序中,然后我应该可以运行:

代码语言:javascript
复制
bundle exec promiscuous publish "Xaaron::ApiKey.all"

但是,当我这样做时,我得到了错误:

代码语言:javascript
复制
RuntimeError: Circular dependency detected while autoloading constant Xaaron::ApiKey
EN

回答 2

Stack Overflow用户

发布于 2014-07-02 21:05:31

TL;DR:尝试将api_key.rb重命名为其他名称。

下面是我认为正在发生的事情: Rails自动加载器加载Xaaron/api_key.rb并遇到一个未知的常量Xaaron::ApiKey。然后,它尝试从名为(基于常量名称)的文件中加载它。Xaaron/api_key.rb。轰隆,循环依赖。

票数 1
EN

Stack Overflow用户

发布于 2017-01-27 05:26:34

就像@artemave声明的那样,将文件重命名为。如果这不起作用,请尝试:

代码语言:javascript
复制
Xaaron::ApiKey.class_eval do
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24439938

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档