在给定某个AJAX请求的情况下,我正试图以动态创建表单元素.
这是我的设置:
视图:
<%= link_to 'Next', check_unique_id_students_path, :remote => true %>
<div id="guardian_student_details"></div>
Run Code Online (Sandbox Code Playgroud)
控制器:
def check_unique_id
@student = Student.new
@this_form = ActionView::Helpers::FormBuilder.new(:student, @student, @template, {}, proc{})
end
Run Code Online (Sandbox Code Playgroud)
JS:
jQuery("#guardian_student_details").html("<%=escape_javascript(render :partial => "student_details", :locals => { :s => @this_form }) %>");
Run Code Online (Sandbox Code Playgroud)
部分:
<% puts s.text_field :first_name %>
<% puts s.field_helpers %>
Run Code Online (Sandbox Code Playgroud)
出于调试目的,我在部分的开头放置了以下行:
<% puts s.class.to_s %>
<% puts s.object.to_s %>
Run Code Online (Sandbox Code Playgroud)
打印出:
ActionView::Helpers::FormBuilder
Student
Run Code Online (Sandbox Code Playgroud)
这应该工作.但是rails会出现以下错误:
ActionView::Template::Error (undefined method `text_field' for nil:NilClass):
1: <% puts s.class.to_s %>
2: <p>
3: <%= s.text_field :first_name, …Run Code Online (Sandbox Code Playgroud) forms ruby-on-rails actionview formbuilder ruby-on-rails-3.1
我为一些简单的计算创建了一个辅助方法.这个辅助方法只返回一个整数.我需要控制器和视图中的帮助器.
不幸的是,它在视图中运行良好,但在控制器中运行良 我收到了undefined local variable or method错误.我该如何解决?
谢谢大家