我有兩個類,它們都使用OAuth 2承載訪問令牌對同一服務器進行API調用。我試圖將與API相關的代碼包裝到模塊中,以便我可以輕鬆地從這兩個類中使用ActiveRecord的回調函數。 我找不到描述如何訪問調用類的數據的任何地方(或者如果我必須將它作爲參數傳遞給回調函數)。訪問類從ActiveRecord回調到外部的對象數據模塊
module M
BASE_URL = 'www.googleapis.com'
TOKEN = *generated oauth token*
module N
def my_method
print("id: #{C.id}")
print("fname: #{C.f_name}")
print("lname: #{C.l_name}")
print("address: #{C.address}")
end
end
module O
def my_method
#assume this does something different from module N
print("id: #{D.id}")
print("fname: #{D.f_name}")
print("lname: #{D.l_name}")
print("address: #{D.address}")
end
end
end
class C
include M
attr_accessible :id, :f_name, :l_name, :address
after_create N::my_method
end
class D
include M
attr_accessible :id, :f_name, :l_name, :address
after_create O::my_method
end
我該如何去從模塊M的my_method中訪問C類數據?還是我完全脫離基地?
你能澄清這個問題嗎?如果在'C'中包含'M',則'C'實例可以調用'my_method'並有權訪問它們自己的屬性。我不知道我是否理解這個問題 –
我得到一個'NoMethodError(未定義的方法ID爲M:模塊):' 更具體地說,我有一個模塊嵌套在該類中包含的另一個模塊 –
JFYI,紅寶石社區標準的縮進是兩個空格。 –