Skip to content

Instantly share code, notes, and snippets.

@kazuph
Created April 14, 2014 14:05
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kazuph/10651123 to your computer and use it in GitHub Desktop.
Save kazuph/10651123 to your computer and use it in GitHub Desktop.
rails_adminでenumな値は数字でなくlocaleの値を表示させたい ref: http://qiita.com/kazuph/items/1cff00ae73f7a42d01fb
ja:
gender:
- '男性'
- '女性'
RailsAdmin.config do |config|
<略>
config.model 'User' do
# いじらない項目についても書いておかないと省かれてしまうので列挙
field :id
field :email
# :enumを書くことで新規作成時などにプルダウンで選択できて便利
field :gender, :enum do
# 表示用の設定
# valueには表示項目の値が入ってくる(この場合は0 or 1)
# nameにはfieldの名前が入ってくる(この場合はgemder)
pretty_value do
I18n.t(name)[value] if value
end
# csvなどでエクスポートするときの設定
export_value do
I18n.t(name)[value] if value
end
enum do
I18n.t(name)
end
end
# 今回のenumの話とは関係無けど誕生日と一緒に年齢を表示する方法
field :birth_date do
pretty_value do
age = Time.now.year - value.year
"#{value.strftime("%Y-%m-%d")} (#{age}才)"
end
export_value do
age = Time.now.year - value.year
"#{value.strftime("%Y-%m-%d")} (#{age}才)"
end
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment