Rails 模型中的两级命名空间

Two level namespacing in Rails model

提问人:muskrat_ 提问时间:5/26/2020 更新时间:5/26/2020 访问量:39

问:

如果我的 Rails 中有这样的东西,这两者有什么不同?model

class A::B::C < ApplicationRecord
  ....
end
module A
  module B
    class C < ApplicationRecord
    ....
    end
  end
end

感谢您的回答。

ruby-on-rails 命名空间 rails-activerecord

评论


答:

0赞 Dev.rb 5/26/2020 #1

他们俩是一样的。

module A
  module B
    class C 
        def test
         puts "hii"
        end
    end
  end
end

ob = A::B::C.new()
ob.test  => hi

class A::B::C
  def testing
    puts "hello"
  end
end

ob1 = A::B::C.new()
ob1.testing  => hello

希望它能清除这个概念。