Ruby on rails 模块作为Rails中的名称空间 出身背景
我们有这样的文件结构:Ruby on rails 模块作为Rails中的名称空间 出身背景,ruby-on-rails,ruby,module,Ruby On Rails,Ruby,Module,我们有这样的文件结构: app/services/promo/promotion_expire.rb app/services/payment/code_pen_subscription.rb 以及下面定义的模块/类 促销_expire.rb 代码\u pen\u subscription.rb 问题 仅在生产中,我们有一个例外 名字错误: 尤宁最初的化常数蚂蚁P艾门t::Pr奥莫::宣传片提昂火烧 为了解决这个问题,我们将Promo::PromotionExpir
app/services/promo/promotion_expire.rb
app/services/payment/code_pen_subscription.rb
以及下面定义的模块/类
促销_expire.rb
代码\u pen\u subscription.rb
问题
仅在生产中,我们有一个例外
名字错误: 尤宁最初的化常数蚂蚁P艾门t::Pr奥莫::宣传片提昂火烧
为了解决这个问题,我们将Promo::PromotionExpire更改为::Promo::PromotionExpire,在来自_Promo的新_订阅中,它告诉ruby从模块层次结构的根目录查看。但我们不知道为什么
这仅在生产自动加载路径中发生?
为什么它只发生在CodePenSubscription中,而不发生在其他地方,因为我们在其他地方使用这个习惯用法。
module Promo
class PromotionExpire
end
end
module Payment
class CodePenSubscription
def new_suscription_from_promo
##stuff
Promo::PromotionExpire.new.expire_single(@user, true)
##/stuff
end
end
end