gpt4 book ai didi

ruby-on-rails - 带有 rails 的模块的类名和子类名之间的冲突名称

转载 作者:行者123 更新时间:2023-12-04 17:02:41 26 4
gpt4 key购买 nike

我有一个 Effect模型中的类和文件夹 "effect"喜欢 app/models/effect/Effect::Status类(class)。效果类就像此配置中带有 rails 的模块一样。

但是我还有一个类Status在模型中:

class Status < ActiveRecord::Base

DEATH = 1

现在我想在 Effect 类中调用这个常量,比如:
class Effect
def self.apply
foo = Status::DEATH
end
end

但是,我有以下错误:

uninitialized constant Effect::Status::DEATH



我认为 Status 之间存在冲突和 Effect::Status
那么我该如何解决这个问题呢?

最佳答案

首先需要Status类成Effect .

然后,使用 :: 访问它在前面表示没有父模块。

require 'status'

class Effect
def self.apply
foo = ::Status::DEATH
end
end

关于ruby-on-rails - 带有 rails 的模块的类名和子类名之间的冲突名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35365319/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com