我在我的/應用/ models文件夾下面的模型:如何從模塊中獲取擴展模塊的類的名稱?
class MyModel < ActiveRecord::Base
require "dashboard"
extend Dashboard
# ...
end
然後我在我的/ lib文件夾名爲dashboard.rb文件,該文件具有下面的代碼:
module Dashboard
def self.my_function
# --> My question pertains to what I need to put here...
end
end
我想在MyModel::Dashboard.my_function
中寫一行代碼,這樣它會返回我的模型的名稱(在這種情況下爲MyModel
)。
我確實發現了一些關於Get class name from a module和https://gist.github.com/1014971的信息,但好像當我的模型繼承自ActiveRecord::Base
時,情況就不同了。後面的這些文章據說可以解釋這一點,但我不知所措。
我嘗試了一些置換與superclass.name
從Dashboard.my_function
內,但我只是得到Dashboard
或退回Module
,而不是MyModel
。
任何人誰可以闡明如何做到這一點將不勝感激。
做你的方法必須是類方法(..can你做myModel - > MyModel.first.my_function)的my_function調用)? – flynfish