使用 Rails v 3.0.11,Ruby v 1.9.3
我有一个页面上有“报告”链接,点击它可以调用 ReportsController #index
class ReportsController < ApplicationController
def index
# Renders index.html.haml
end
end
现在我已经有一个已经存在的JSON API( ReportsDataController ,如下所示)返回我需要重用的JSON响应。
Controller返回JSON响应(我的JSON API)
class ReportsDataController < ApplicationController
respond_to :json
def users_events_activity
user_activity_data_obj = find_user_events_activity_per_day
respond_with user_activity_data_obj
end
def users_comments_activity
user_comments_data_obj = find_user_comments_activity_per_day
respond_with user_comments_data_obj
end
end
在我的 app / views / reports / index.html.haml 上,我需要同时呈现返回的数据 操作 ReportsDataController#users_events_activity 和 ReportsDataController#users_comments_activity 。
是否有Rails标准方法可以实现上述要求?如果没有,请有人建议我采取一些方法来达到同样的目的吗? 的
谢谢,
Jignesh
答案 0 :(得分:0)
如果您不想发出两个请求,可以随时创建另一个控制器操作并像这样呈现JSON:
class ReportsDataController < ApplicationController
respond_to :json
def users_combined_events_comments_activity
user_activity_data_obj = find_user_events_activity_per_day
user_comments_data_obj = find_user_comments_activity_per_day
respond_with { activities: user_activity_data_obj, comments: user_comments_data_obj }
end
end