2
我想使用mixin(HTTParty)並從類實例中訪問那些混入方法。以我目前的執行情況,紅寶石是告訴我它不知道的方法「獲得」:在類中使用mixin
class Recipe
include HTTParty
base_uri 'http://www.food2fork.com/api'
default_params :key => @key
format :json
def initialize(key)
@key = key
end
def search(term)
get('/search', query: { q: term})['recipes']
end
def self.for(term)
get('/search', query: { q: term})['recipes']
end
end
作用域仍然在Ruby中我困惑的一大問題。我相信這對正確的人來說是微不足道的。一個混合的大多數例子利用這個與像
Recipe.for('term')
的靜態引用這不是很OO我,所以我想這樣做,如:
recipes = Recipe.new('key')
recipes.search('chocolate')
我建議你閱讀http://catb.org/esr/faqs/smart-questions.html。雖然我們很欣賞學習的困難,但我們期待着經過深思熟慮和寫得很好的問題;如果你已經做了充分的研究,並且你的問題反映了你研究並試圖解決問題的努力,那麼你在學習曲線上的位置並不是真正的密切關係。我們尊重努力。 –