我有一个循环问题的表单:
<%= form_for @assessment do |f| %>
<div class="questions">
<%= render 'questions', :f=> f %>
</div>
<% end %>
问题部分:
<div class="questions">
<% @o_questions.each do |question| %>
<%= render 'question_fields', :question=> question, :f=> f %>
<% end %>
</div
如果用户点击&#34;过滤器&#34;按钮,我想进行AJAX调用以更新我在问题部分中循环的@o_questions变量:
<%= link_to "Tracked Questions", assessments_followups_answers_path(:assessment=> @original_assessment, :filter=> "tracked_questions"), :class=>"btn btn-default filter active", :id=>"tracked", :remote=> true %>
行动(#answers)
if @filter == "tracked_questions"
@s_questions = @original_assessment.tracked_questions("S")
end
Answers.js.erb:
$('.questions').html("<%= j render 'questions', :f => f %>");
所以基本上这个想法是用新的@o_questions变量重新渲染问题。但我磕磕绊绊是因为我收到了以下错误
> ActionView::Template::Error (undefined local variable or method `f'
> for #<#<Class:
我怎样才能做到这一点?我不认为我可以通过控制器传递表单对象。有没有更好的方法去做我想做的事情?