【发布时间】:2014-04-20 23:30:59
【问题描述】:
我有一个 lib 文件 lister_extension.rb
module ListerExtension
def lister
puts "#{self.class}"
end
end
并发布模型
class Post < ActiveRecord::Base
has_many :reviews
extend ListerExtension
def self.puts_hello
puts "hello123123"
end
end
当我在rails c 中调用时,一切都很好:
2.1.1 :003 > Post.lister
Class
=> nil
但是当我想向我的模块添加一个类时会发生什么?
例如:
module ListerExtension
class ready
def lister
puts "#{self.class}"
end
end
end
我收到这个错误
TypeError: wrong argument type Class (expected Module)
当我在 rails c 中调用 Post.first 时
【问题讨论】:
-
你为什么把类名写成
ready而不是Ready?
标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-4