我有一个奇怪的问题,我有一个模块在我的Rails应用程序启动过程中的某个时刻被神秘地定义,我无法弄清楚在哪里。该模块的名称是Cause
。Rails引导过程中模块的跟踪定义
我已经试过:
- grepping为
class Cause
或module Cause
项目目录没有结果 pry
版在config/application.rb
每一步,并与Object.const_get('Cause')
检查......在所有该文件是的undefined(返回一个NameError: uninitialized constant Cause
-这很好)pry
ed在我的第一个初始化程序,它是在那里定义。- 使用
pry-byebug
设置一个断点,我会希望将停止的那一刻Cause
执行中被定义,但它并没有像下面的表达式:break if (Object.const_get('Cause') rescue false)
任何人有任何调试策略我都没有试过吗?如果Rails在定义好的时刻暂停在pry会话中,那将是非常棒的,但我无法弄清楚如何实现这一点。另外,在启动过程中,config/application.rb
和config/initializers/*
的评估之间是什么? The Rails Guide关于这个问题似乎没有提到config/initializers
目录...
希望对此有帮助。
它可能来自您已安装的其中一个宝石。你能向我们展示你在Gemfile中的宝石列表吗? – infused 2014-09-30 20:22:10
@infused已添加到帖子。 – neezer 2014-09-30 20:32:21