Frage

Referenzierung Frage # 2013421, ich habe folgende RoR Modelle:

class Game < ActiveRecord::Base
  has_many :piles
end

class Pile < ActiveRecord::Base
  belongs_to :game
end

Aus Gründen der Argumentation, suppose Game hat ein Attribut name und Pile hat ein Attribut type, sowohl string. Es gibt genau 10 Pfähle pro Spiel.

Ich mag ein einzelnes HTML-Formular ein neues Spiel, ähnlich den von ruby script\generate scaffold erzeugt zu schaffen; das heißt wie:

<h1>New game</h1>

<% form_for(@game) do |f| %>
  <%= f.error_messages %>

  <p>
    <%= f.label :name %><br />
    <%= f.text_field :name %>
  </p>
  <p>
    <%= f.submit 'Create' %>
  </p>
<% end %>

<%= link_to 'Back', games_path %>

Wie kann ich Felder zum Formular hinzufügen, um Werte für das Pile.type Feld für jeden der 10 Pfähle zu lesen?

War es hilfreich?

Lösung

Sie können etwas tun:

Modell:

class Game < ActiveRecord::Base
  has_many :piles
  accepts_nested_attributes_for :piles
end

in der Form:

 <% f.fields_for :piles do |pile_form| %>

   <%= pile_form.label :your_attribute %>
   <%= pile_form.text_field :your_attribute %>

 <% end %>

Beachten Sie, dass ‚Typ‘ Methode-keyword-Spalte von Active reserviert ist polymorphe Assoziationen zu erreichen

finden Sie unter guten rel="nofollow Führung über verschachtelte Formen in Schienen

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top