我正在構建項目管理應用程序,我正在使用form_for
創建項目,但在其中我想要一個fields for
來創建3個學生。在一個字段中的多個文本字段
我建立了我的new.html.erb
的項目是這樣的:
<h1>Creating new project</h1>
<%= form_for :project, url: projects_path do |f| %>
<p>
<%= f.label :name %>
<%= f.text_field :name %>
</p>
<p>
<%= f.label :lecturer %>
<%= f.text_field :lecturer %>
</p>
<p>
<%= f.fields_for :students do |s| %>
<%= s.label :name %>
<%= s.text_field :name %><br>
<%= s.label :name %>
<%= s.text_field :name %><br>
<%= s.label :name %>
<%= s.text_field :name %>
<% end %>
</p>
<p>
<%= f.submit %>
</p>
<% end %>
而對於jusst增加了一個簡單的網上看到我的form_for
結果create
方法:
def create
render text: params[:project].inspect
end
所以,當我填寫在頁面上的文本字段,並提交我得到的所有是{"name"=>"asd", "lecturer"=>"ffff", "students"=>{"name"=>"qeew"}}
,因爲你只能看到我的最後一個學生被傳遞給這本字典。
如何在一個fields_for
中創建多個學生?或者我如何設置這兩個模型來相互配合。我希望你明白我的觀點並知道我想達到什麼目的。
@rohit,感謝您的編輯。 – vee
沒問題。我通過手機編輯它,所以語法突出顯示沒有正確設置。我看到你再次編輯它:-) – Rohit