0

パーシャルをいくつか書きましたが、レンダリングされていないようです。同じ問題を報告した他の投稿者の一部は、<%= ...%>の代わりに埋め込みルビーコードに<%...%>を使用するという間違いを犯しました。私はそのエラーを犯していないので、パーシャルがレンダリングされない理由がわかりません。おそらく誰かが私のコードに私が欠けている何かを見るでしょう。関連性があるかどうかはわかりませんが、render:partialの呼び出しはform_tag内で発生します。また、@ Teachersは、registration_twoコントローラーアクションで定義および設定されるTeacherオブジェクトの配列です。

これが私の見解からのコードの抜粋です。static_pages/registration_two.html.erb

<div id="teachers"> 
<%= render :partial => 'teacher', :collection => @teachers %>
</div>
<%= link_to_function "Add Instructor" do |page|
page.insert_html :bottom, :teachers, :partial => 'teacher', :object => Teacher.new
end %>

そして、これが私の部分的なstatic_pages/_teacher.html.erbです

<div class="teacher">
<% fields_for teacher do |teacher_field| %>
  <p>
    Instructor Name: <%= teacher_field.text_field :name %>


    Email: <%= teacher_field.text_field :email %>
    <%= link_to_function "remove", "$(this).up('.teacher').remove()" %>
  </p>
<% end %>
</div>

現在表示されているのは[インストラクターの追加]ボタンだけですが、これは何もしません。

私は基本的に、動的なフォーム送信に対するRyanBatesのアプローチを模倣しようとしています。 http://railscasts.com/episodes/74-complex-forms-part-2

4

1 に答える 1

1

に置き換え<% fields_forます<%= fields_for

補足、あなたは単に使用することができます:

<%= render @teachers %>
于 2012-09-09T22:10:26.497 に答える