如何在单击按钮后在单页应用程序中渲染部分轨道(假设至少有两个控制器在播放)?
不管我读了多少材料,我都不清楚:
这正是我想要做的事情:
我希望用户访问我的应用程序的索引页面。在该页面,他们应该能够点击按钮“获取派对活动结果”。返回给他们的结果应来自数据库。这个按钮点击请求应该是AJAX。
据我所知,这意味着
目前我有:
应用/控制器/ static_pages_controller.rb
def index
end
应用/控制器/ party_events_controller.erb
def food_event
end
应用/视图/ static_pages / index.html.erb
<%= button_to "get events", 'layouts/party_events/', remote: true %>
我设置了'remote:true',因为这表明该链接将通过AJAX提交。
应用/视图/ static_pages / _party_events.html.erb
<% food_events.each do |event| %>
<li><%= event.text %></li>
<li><%= event.location %></li>
---------------------
<% end %>
其他信息,如果有帮助:
答案 0 :(得分:1)
在静态页面中,您应该有一个可用于替换或修改ajax的DOM元素。
在你的button_to中,你应该指定你想要的控制器和动作
在party_event_controller#action中,您可以使用js进行响应并让它呈现一个模板,#action.js.erb将执行DOM操作以替换或更新页面。
提出类似问题:Rails - updating div w/ Ajax and :remote => true
使用无障碍javascript显示ajax crud的教程:http://stjhimy.com/posts/07-creating-a-100-ajax-crud-using-rails-3-and-unobtrusive-javascript