0

我是 Rails 初学者,我正在尝试显示从外部 api 返回的 json 对象。我正在使用 HTTParty,我几乎可以肯定我已经正确设置了。我的 HTTParty 类中有一个名为

self.get_all()

我将如何创建一个新页面来显示我从该函数返回的 JSON?

4

1 回答 1

1

这在很大程度上取决于返回的 json。除了它是“JSON”之外,它看起来像什么?如果您还没有检查过它,也许这是一个很好的起点。您可以像这样调用您的方法:(选择一个)

puts your_httparty_class.get_all.inpsect # will be displayed in your logs (most likely)
raise your_httparty_class.get_all.inspect # will raise the response to the view

你可能会发现自己需要做这样的事情来确保它是一个哈希。

response = HTTParty.get('https://api.somesite.com/some_endpoint')
body = JSON.parse(response.body)

现在您知道并且可以看到 JSON 只是一个哈希,您可以像这样访问它:

something = body[:something] # accessing a hash
nested_something = body[:something][:nested_something] # accessing a nested hash

something然后,您可以nested_something在您的应用程序周围移动。因此,您可以将它作为实例变量从您的控制器传递到您的视图:

# @ makes it an instance variable and therefore accessible to your controller's views
@something = body[:something]
@nested_something = body[:something][:nested_something]
于 2013-10-16T05:53:02.153 回答