2015-09-07 2 views
1

я модель, определенных как то:Rails - collection_select - населяют со значениями, перечисленными в модели

class Order < ActiveRecord::Base 
    belongs_to :user 

    TYPES = %w[t_01 t_02 t_03] 
    validates :order_type, inclusion: { in: TYPES } 
end 

я пытаюсь сделать выпадающее меню в окне, которое будет населен значений, доступных в ВИДОВ ,

показано ниже, конечно, не правильный, потому что она заполнит выпадающее меню с типами, которые принадлежат к заказам, уже записанным в БД:

<div class="field"> 
    <%= f.label :order_type %><br> 
    <%= f.collection_select :order_type, Order.all, :order_type, :order_type %> 
</div> 

Может кто-нибудь дать мне подсказку, как я могу сортировать его вне? Заранее спасибо.

ответ

2
#model 

def self.types 
    TYPES 
end 


#view 
<%= f.collection_select :order_type, Order.types, :to_s, :to_s, {include_blank: false}, {:multiple => false} %> 
+0

совершенен! Спасибо :) – Michal

0

Вы также можете использовать это как

<%= f.collection_select :order_type, Order::TYPES , :to_s, :to_s, {include_blank: false}%>

 Смежные вопросы

  • Нет связанных вопросов^_^