我的目标是有一个表单,我填写一些细节,然后我可以点击“添加问题”,这是一个应该动态添加问题的链接。
即
日期:
名称:
说明:
添加问题
创建
我的 _form.html.haml 就是这样开始的(这个表格在观点/访谈中,因为我的目标是能够在面试中添加问题。但是,可以使用问题也独立于采访)
= form_for ([:posting, @interview]) do |ff|<br>
- if @interview.errors.any?
. . . (more fields) . . .
.field{:id => "overall_questions"}
=link_to "Add a Question", new_question_path, :remote => true
%br/
%br/
.field{:id => "individual_questions"}
=ff.label :whyyy
=ff.fields_for :questions, @interview.questions do |builder|
= render :partial => "question_fields"
%br/
%br/
.actions
= ff.submit
_question_fields.html.haml
.fields{:id => "question#{builder.object.id}"}
=ff.label :content, "Question"
=link_to "Remove", question_path(builder.object.id), :remote => true, :confirm => "Are you sure?", :method => :delete
%br/
=ff.text_area :content, :rows => 3
:remote =&gt; true(来自_form.html.haml)被定向到我的 questions_controller.rb
def new
@question = Question.new
respond_to :js
end
这链接到我在视图/问题
下的 new.js.erb 文件$('#individual_questions').clone().appendTo($('#overall_questions'))
问题是,我不太确定如何调用_question_fields.html.haml。我知道js.erb文件有效,因为我在单击“添加问题”时能够运行警告框,并且它目前还会在字段中附加带有个别问题的Whyyy。
答案 0 :(得分:0)
下一集RailsCasts概述了实现此目的的一种方法:
http://railscasts.com/episodes/74-complex-forms-part-2
就.haml
问题而言,您应该能够修改剧集中的示例以确定该部分。只要它的名字遵循惯例(并且快速浏览它看起来像它),它应该没有太多麻烦。