-1
我想弄清楚一次創建多個數據庫條目的最簡潔的方法(或者它甚至是一個好主意)。Rails一次創建多個條目
通過event_bands和event_venues模型,我有一個事件模型,其中有很多樂隊和很多場地。
現在,用戶首先創建事件,然後被重定向到表單以創建event_band和event_venue關係。我想如果可能的所有這一切簡化成一種形式,像這樣(底線是最相關的):
<%= form_for @event do |f| %>
<%= f.label :name %>
<%= f.text_field :name %><br />
<%= f.label :contact %>
<%= f.text_field :contact %><br />
<%= f.label :price %>
<%= f.text_field :price %><br />
<%= f.label :info %>
<%= f.text_area :info %><br />
<%= f.label :date %>
<%= f.date_select :date, start_year: 2014 %><br />
<%= f.label :time %>
<%= f.text_field :time, placeholder: "7:40pm" %><br />
<%= f.label :band %>
<%= select(:event_band, :band_id, options_for_select(Band.order(name: :asc).collect { |b| [b.name, b.id]})) %><br />
<%= f.label :venue %>
<%= select(:event_venue, :venue_id, options_for_select(Venue.order(name: :asc).collect { |v| [v.name, v.id]})) %><br />
<%= f.submit %>
<% end %>
因爲event_band
和event_model
需要event.id
,我想我將不得不使用一個after_create
回調建立並保存它們。我將這個概念化的問題是我想通過事件的表單發佈這些額外的:band_id
和:venue_id
參數。
有沒有一種更清晰的方式來處理多個模型的發佈參數,通過一種形式,然後在回調中使用它們,還是我朝着錯誤的方向走?