我as Rails Beginner創建了一個簡單的演示應用程序來試驗嵌套窗體。 但不知何故,我的代碼顯示奇怪的副產品:嵌套窗體顯示太多字段! Rails初學者
我唯一的目的是爲患者對患者創造新的治療顯示網頁,而現在 顯示它與尚未建立治療和其他一些瘋狂的東西輸入字段!我錯了什麼?我到此爲止:
rails new hama
cd hama
rails g scaffold Patient name:string
rails g model Treatment content:string
rake db:migrate
患者模型:
attr_accessible :name, :treatments_attributes
has_many :treatments, :dependent => :destroy
accepts_nested_attributes_for :treatments
治療模式:
attr_accessible :content
belongs_to :patient
在患者/顯示:
<b>Name:</b>
<%= @patient.name %>
</p>
<p>
<b>Treatments:</b>
<%= @patient.treatments.each do |treatment| %>
<%= treatment.content %>
<% end %>
</p>
<%= form_for @patient do |f| %>
<%= f.fields_for :treatments do |ff| %>
<%= ff.text_field :content %>
<% end %>
<%= f.fields_for :treatments do |ff| %>
<%= ff.text_field :content %>
<% end %>
<%= f.submit %>
<% end %>
而且在病人控制器:
def show
@patient = Patient.find(params[:id])
treatment = @patient.treatments.build
respond_to do |format|
format.html # show.html.erb
format.json { render json: @patient }
end
end
爲什麼它顯示輸入字段與創建治療?我只需要兩個輸入字段進行新的治療 –