【发布时间】:2009-03-26 21:03:03
【问题描述】:
这是我的动作模型:
class Action < ActiveRecord::Base
end
class Fold < Action
end
class Check < Action
end
class Call < Action
end
class Bet < Action
end
在另一个模型中,我有这个
class Deal < ActiveRecord::Base
def Deal.parse_action(action_string)
case action_string
when "folds": Fold.new()
when "checks": Check.new()
when "calls": Call.new()
when "bets": Bet.new()
when "raises": Bet.new()
else nil
end
end
# ...
end
现在,当我对此进行测试时,如果这在我的单元测试中有效,那么一切似乎都有效。但是一旦我在开发模式下启动 web 服务器,我就会得到这个:
NameError(未初始化的常量 Deal::Fold): app/models/deal.rb:115:in `parse_action' ...为什么它认为 Fold 存在于命名空间 Deal 中?为什么在测试环境中不会发生这种情况?
【问题讨论】:
标签: ruby-on-rails ruby