ruby: 2.2.0
rails: 4.2
config(旧rails config)をインストールします。
(settinglsogicでも利用できる方法だと思います)
Gemfileに以下の記述を追記します。
gem 'config'
gemをインストールします。
$ bundle install
rails_configをrailsにインストールします。
$ bundle exec rails g config:install
今回はtestdata(モデル)にstatus(カラム)を設定してenumを利用します。
scaffoldを作成します。
$ bundle exec rails g scaffold testdata status:integer
statusで利用するリストをconfig/settings.ymlに記述します。
model:
testdata:
status:
admin: 10
normal: 20
guest: 30
記述に対してデータを設定します。
app/model/testdatum.rbに記述します。
class Testdatum < ActiveRecord::Base
enum status: Settings.model.testdata.status
end
設定したデータをviewフォームに適応します。
app/view/testdata/_form.html.erbでの該当のフォームを以下の記述に変更します。
selectedも同時に設定します。
<%= f.label :status %>
<%= f.select :status, @testdatum.statuses.keys , selected: @testdatum.status %>
0 件のコメント:
コメントを投稿