/ / Vnorené tvary pomocou kokónového klenotu v Ruby on Rails 4.2 - rubínovo-na-koľajnice, rubín, formy, rubínovo-na-koľajnice-4.2, kokon-gem

Vnorené tvary používajúce kokónový klenot v Ruby on Rails 4.2 - rubínovo-na-koľajnice, rubínové formy, rubínovo-na-koľajnice-4.2, kokon-gem

Budem stavať webovú aplikáciu pomocou Rails 4.2 a mám model nazvaný Strategy, ktorý má has_many vzťah k taktickému modelu.

Ak chcete vytvoriť pohľad na stratégiu, musím mať na formulári veľa vnořených taktiek. Používam klenot kokónu na vytvorenie tohto pohľadu.

Doteraz som dostal formu, aby fungovala správne z väčšej časti, ale problémom je, že som chcel pridať atribút Type do môjho Tactic modelu.

Pre danú stratégiu chcem mať 3 taktiky jedného daného typu a 2 modely druhého.

Problém spočíva v tom, že pri zobrazovaní môjho pohľadu sú všetky päť modelov uvedené postupne bez toho, aby museli mať okolo seba vlastný HTML kód.

Existuje jednoduchý spôsob, ako oddeliť, ktoré z nich sú vykreslené? Práve teraz môj názor vyzerá takto ...

<%= 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 %>

Ak niekto môže ponúknuť nejakú radu, bolo by veľmi ocenené.

odpovede:

0 pre odpoveď č. 1

Chcete, aby bol formulár vykreslený tak, aby každá stratégia obsahovala presne 5 taktík, z ktorých 3 sú z jedného typu a 2 sú od druhého?

Ak áno, môžete to urobiť vo svojom regulátore:

5.times do
tactic = @strategy.tactics.build
tactic.tactic_type = "tactic_type"
end

Tiež si všimnite, že pomocou atribútu nazvaného type nie je dobrý nápad. Použite niečo podobné tactic_type miesto.