如何使用render重新加载div:partial in rails

时间:2014-05-02 18:51:38

标签: javascript jquery ruby-on-rails ruby-on-rails-3 partial-views

我对rails非常陌生,我试图在点击按钮时重新加载div。我知道渲染局部不再适用于js资产。当我点击链接时,rails控制台确认它呈现局部视图,但它1)似乎没有刷新div或2)变量@choices没有传递到局部视图。

我觉得它很简单?对render:partial的初始调用是在另一个html.erb文件中进行的,它正确显示。

steps_controller.rb

helper_method :refresh
....
def refresh
    @choices = get_valid_choices()
    render :partial => 'editor', :content_type => 'text/html', locals: {valid_choices: @choices}
end

在routes.rb

match '/refresh', to: 'steps#refresh', via: 'get', as: :refresh

在_editor.html.erb(部分视图)

<% valid_choices.each do |vc| %>
<%= link_to "Steps", :'data-update-target' => 'mySteps', remote: true, controller: 'steps', action: 'refresh' %>
<div class="step-name"><%= show_name(vc) %></div>
...     

0 个答案:

没有答案