鉴于以下情况:
module RESTable
BASE_URL = "http://url.domain/api/rest"
LOGIN_URL = "#{BASE_URL}/login"
LOGOUT_URL = "#{BASE_URL}/logout"
def request_url
"#{BASE_URL}/mbo/#{@@object_resource}/_format=json"
rescue NameError
p "@@object_resource was not defined"
end
end
class ServiceRequests
include RESTable
@@object_resource = "sr"
def initialize
binding.pry
end
end
在 pry 会话中,调用 request_url 会产生:
"@@object_resource was not defined"
但@@object_resource 设置为“sr”。
这个想法是,对于每个类,我只包含 RESTable 模块,调用 request_url 会根据我所包含的类的 @@object_resource 为我提供正确的 URL。
更一般地说,如何从模块中调用类变量?