私は単純なレールプロジェクトを作成しました。すべて私は新しいモデルPaintings
そのbelongs_to
治療とPatient
そのhas_many
治療を通して絵画を追加しようとするまでうまくいった。だから何とか私が作成したネストされたフォームは表示されません、私はそれがコントローラと関係していると信じています!ありがとう、そしてドイツからの挨拶!フィールドfields_forが表示されない、入れ子になったフォーム
トリートメントコントローラ:
class TreatmentsController < ApplicationController
def create
@patient = Patient.find(params[:patient_id])
@treatment = @patient.treatments.create(params[:treatment])
redirect_to patient_path(@patient)
end
def destroy
@patient = Patient.find(params[:patient_id])
@treatment = @patient.treatments.find(params[:id])
@treatment.destroy
redirect_to patient_path(@patient)
end
end
そして、表示されませんnested fields_for
による治療のためのフォーム:
<%= form_for([@patient, @patient.treatments.build]) do |f| %>
<div class="field">
<%= f.label :content %>
<%= f.text_area :content, :cols => "30", :rows => "10" %>
</div>
<div class="field">
<%= f.label :category_id %>
<%= f.collection_select :category_id, Category.find(:all), :id, :typ %>
</div>
<%= f.fields_for :paintings do |ff| %>
<div class="field">
<%= ff.label :name, 'Tag:' %>
<%= ff.text_field :name %>
</div>
<% end %>
<div class="field">
<%= f.submit nil, :class => 'btn btn-small btn-primary' %>
</div>
<% end %>
UPDATE:
表示サイト:
<% @patient.treatments.each do |treatment| %>
<tr>
<td><%= treatment.category.try(:typ) %></td>
<td><%= treatment.content %></td>
<td><%= treatment.day %></td>
<td><div class="arrow"></div></td>
</tr>
<tr>
トライf.fields_for:
は、その後、溶液は、このような
paintings
「を構築」するnew
方法を変更しないようになります:あなたはこのようになりますnew
方法を、持っている場合:絵画、絵画。新しいこと| m |。また、モデルコードとコントローラコードを詳細に投稿できますか? –あなたの最高!私はそれを2日試してみました。私は正しい答えに設定することができますようにあなたのコメントを答えに移動してください! –