Используйте плагин enum column , чтобы объявить поле дня как поле enum.
class BusinessHours < ActiveRecord::Migration
def self.up
create_table :business_hours do |t|
t.integer :business_id, :null => false
t.enum :day, :limit =>[:sun, :mon, :tue, :wed, :thu, :fri, :sat], :nill => false
t.time :open_time, :null => false
t.time :close_time, :null => false
end
end
def self.down
drop_table :business_hours
end
end
Теперь, когда вы найдете модель BusinessHour, вы получите день в виде строки.
b = BusinessHour.find_by_business_id(2).first
p b.day.to_s.camelize #prints Sun/Mon/Tue etc.
Вы можете использовать помощники форм enum_select
и enum_radio
для создания списка / группы переключателей для группы enum: