Я следил за этим Railscast http://media.railscasts.com/videos/074_complex_forms_part_2.mov
У меня есть задача и шаги.Каждая задача может иметь много шагов.
Я пытаюсь добавить вложенную форму, нажав на ссылку.Разница между тем, что показывает Railscast, и тем, что у меня есть, в том, что у меня есть форма шагов в контроллере шагов, но это не должно быть проблемой.
Я также использую rails3 с jQuery, но я не видел учебных пособий о том, как это сделать в rails3.
Моя задача / new.html.erb
<%= form_for @task, :html=>{:multipart => true do |f| %>
<%= render 'form', :f=>f %>
< end >
для моей задачи / _form.html.erb
<%= f.label :task_name %>
<%= f.text_field :task_name %>
<%= f.label :media %>
<%= f.file_field :media %>
< div id="steps" >
<%= render 'steps/form', :f=> f % >
< /div>
<%= link_to_function "Add Step" do |page|
page.insert_html :bottom, :steps, :partial=>'steps/form', :object => Step.new end %>
<%= f.submit %>
steps / form.html.erb
<p class="fields">
<%= fields_for :steps do |builder| %>
<%= builder.label :title >
<%= builder.text_field :title >
<%= builder.label :description %>
<%= builder.text_area :description %>
<% end %>
</p>
Страница загружается нормально, но когда я нажимаю «добавить шаг»ссылка ', я получаю две ошибки JavaScript.
RJS error:
TypeError: Element.insert is not a function
, затем
Element.insert("steps", {bottom: "<p class=\"fields\">\n\t</p>\t"});