Rails gem api方法链式动态
我是Grackle和Gibbon的粉丝,因为他们使api查询变得非常简单。 我喜欢例如grackle,你可以链接将插入到url请求的方法。 例如:
client.users.show? :screen_name=>'some_user' #http://twitter.com/users/show.json?screen_name=some_user
注意.users
和.show
结果到/users/show
我该如何编写代码呢? 这样我就可以拥有
Some_class.method1.method2
方法链通常通过实现有两个目的的实例方法来工作:
- 改变class级的一些内部状态
- 返回实例本身
以下是方法链指南的示例:
class Person def name(value) @name = value self end def age(value) @age = value self end end
这样,您可以在链接方法时更改内部状态:
> person = Person.new # => # > person.name('Baz') # => # > person.name('Baz').age(21) # => #
您可以在Ruby中的方法链接和延迟评估中找到更多详细信息。
在你的情况下,我建议分别由users
和show
方法设置的@resource
和@action
实例变量。