0
什麼是建立一個包含一個選擇字段的集合,但值包含在選擇需要被從沒有一個模型採購最好的,正確的方式simple_forms_for場與調用字段模型的直接關聯?Rails的無關聯創建集合
比如我有一個simple_forms_for形式類似如下:
<%= simple_form_for(@customer) do |f| %>
<%= f.error_notification %>
<fieldset>
<div class="form-inputs">
<%= f.input :code, required: true %>
<%= f.input :name, required: true %>
<%= f.input :location, required: true %>
<%= f.input :service_level %>
<%= f.input :golive_date, :as => :date_picker %>
<%= f.input :connection_type %>
<%= f.input :service_centre %>
<%= f.input :end_date, :as => :date_picker %>
<%= f.input :sla %>
<%= f.input :project_code %>
</div>
<div class="form-actions">
<%= f.button :submit, :class => "btn btn-primary" %>
</div>
</fieldset>
<% end %>
我想要做的:service_level字段中的選定字段並添加一個集合到它,但是存儲查找值的表沒有關聯與表格的客戶表。
class Lookup < ActiveRecord::Base
validates_presence_of :name, :description
has_many :lookup_values
accepts_nested_attributes_for :lookup_values, :reject_if => lambda { |a| a[:content].blank? }, :allow_destroy => true
end
class LookupValue < ActiveRecord::Base
belongs_to :lookup
end
class CreateLookups < ActiveRecord::Migration
def change
create_table :lookups do |t|
t.string :name
t.string :description
t.timestamps
end
end
end
class CreateLookupValues < ActiveRecord::Migration
def change
create_table :lookup_values do |t|
t.integer :lookup_id
t.string :name
t.string :value
t.timestamps
end
end
end
我基本上希望能夠使用下面的SQL查詢來填充選擇的值:
select v.name||' - '||v.value
from lookup_values v,
lookups l
where v.lookup_id = l.id
and l.name = 'Service level';
被保存到實際值:service_level字段需要的價值v.name。
所有的收藏品的例子,我只看到了似乎展示瞭如何創建基於具有它們之間的關聯模型選擇,只是想知道如果有一個簡單的方法來實現這一目標沒有關聯。
好簡單的谷歌搜索回答第一個問題,只是需要加入:include_blank =>假輸入字段。 – shwashbuckle 2014-09-06 10:58:41