我有一個用戶模型的枚舉定義。rails + simpleform:selected沒有設置爲enum的值
class User < ActiveRecord::Base
enum program_of_study: [
:program_of_study_unknown, :program_of_study_cs, :program_of_study_ceg,
:program_of_study_is, :program_of_study_science,
:program_of_study_engineering, :program_of_study_fass,
:program_of_study_business, :program_of_study_others
]
end
而在simple_form我:
<%= simple_form_for(locals[:user], wrapper: :horizontal_form, html: {class: 'form-horizontal'},
url: {action: (locals[:is_new] ? 'create' : 'update')}) do |f| %>
<%= f.error_notification %>
<%= f.input :program_of_study, collection: User.program_of_studies, include_blank: false, selected: locals[:user].program_of_study %>
<%= f.button :submit, class: 'btn-success' %>
<% end %>
但是,看來,雖然用戶的program_of_study
是'program_of_study_science'
(在軌控制檯檢查),當我呈現的形式,所示選擇元素仍然有'program_of_study_unknown'
作爲顯示的。沒有選擇正確的一個。
所以,如果我沒有得到它錯誤,張貼的「價值」會像「program_of_study_cs」? –
是和枚舉的工作方式,該有效應該工作。你試過了嗎? – Leito