[英]Nested forms using the Cocoon gem in Ruby on Rails 4.2
我正在使用Rails 4.2构建Web应用程序,并且有一个名为Strategy的模型,该模型与Tactic模型具有has_many关系。
要为策略创建视图,我需要在表单上有许多嵌套的战术。 我一直在使用Cocoon gem开发这种视图。
到目前为止,我已经能够使表单在大多数情况下正常工作,但问题是我想在Tactic模型中添加Type属性。
对于给定的策略,我想拥有一种给定类型的3种策略,以及另一种给定2种模型。
问题在于渲染我的视图时,所有五个模型都按顺序列出,而没有空间放置我自己的HTML代码。
是否有一种简单的方法可以区分出其中的哪些内容? 现在,我的看法如下...
<%= form_for @strategy do |f| %>
<div class="strategy">
<%= f.label :name %>
<%= f.text_field :name %>
</div>
<div class="tactics">
<%= f.fields_for :tactics do |i| %>
<%= render 'tactics_fields', f: i %>
<% end %>
</div>
<div class="buttons">
<%= f.button "Save Strategy", class: 'button' %>
</div>
<% end %>
如果有人可以提供任何建议,将不胜感激。
您是否希望呈现该表单,以便每个策略正好在其下面列出了5种策略,其中3种是一种类型,而2种是另一种类型?
如果是这样,您可以在控制器中执行以下操作:
5.times do
tactic = @strategy.tactics.build
tactic.tactic_type = 'tactic_type'
end
另外,请注意,使用名为type
的属性不是一个好主意。 使用类似tactic_type
东西。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.