gpt4 book ai didi

ruby - 在类中使用 mixin

转载 作者:数据小太阳 更新时间:2023-10-29 09:00:58 25 4
gpt4 key购买 nike

我想使用一个 mixin (HTTPTy) 并从类实例内部访问那些混合在方法中的方法。在我当前的实现中,Ruby 告诉我它不知道“get”方法:

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 中的一大困惑。我相信这对合适的人来说是微不足道的。 mixin 的大多数示例都将其与静态引用一起使用,例如

Recipe.for('term')

这对我来说不是很面向对象所以我想这样做:

recipes = Recipe.new('key')
recipes.search('chocolate')

最佳答案

getHTTPParty 的类方法。像这样重写您的实例方法 search:

def search(term)
self.class.get('/search', query: { q: term})['recipes']
end

关于ruby - 在类中使用 mixin,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35806532/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com