我目前正在关注HTTParty的API教程。一切正常,我很高兴能学到新知识。像往常一样,本教程让我有些疑问。
现在,我可以使用GET
请求调用metup API,并从metup中获取所有事件。 JSON
被解析为我的视图,但是现在我想分别显示每个事件,例如:
<%= @events.each do |event| %>
<%= event.name %>
<%= event.date %>
<%= event.organizator %>
<% end %>
这是我的模特:
class Meetup
include HTTParty
base_uri 'api.meetup.com'
attr_reader :options
def initialize
api_key = ''
@options = {
query: {
key: api_key,
sign: "true",
desc: "true",
page: 3
}
}
end
def get_data
self.class.get('/operation-code-hampton-roads/events', @options)
end
def events
if get_data.code.to_i == 200
get_data.parsed_response
else
raise "Error fetching data from Meetup API"
end
end
end
我的控制器:
class DashboardsController < ApplicationController
before_action :authenticate_user!
def index
@services = Service.all
respond_to do |format|
@events = Meetup.new.events
format.html
format.json { render json: @events }
end
end
end
我的观点:
<%= @events.each do |event| %>
<!-- event.name ? -->
<% end %>
答案 0 :(得分:0)
由于这是我第一次使用JSON,因此我认为在视图中显示@events
会更加困难。
但这很简单,我什至不需要创建新的迁移!
我只是将此添加到视图中,一切正常!
<% @events.each do |event| %>
<%= event["name"] %>
<%= event["status"] %>
<%= event["local_date"] %>
<%= event["local_time"] %>
<%= event["yes_rsvp_count"] %>
<%= event["venue"]["city"] %>
<%= event["venue"]["address_1"] %>
<%= raw (event["description"]).truncate(100) %>
<% end %>