ActiveRecordのenumで定義した要素を元にセレクトボックスを作成する2019-11-27ActiveRecordのenumで定義した要素を元にセレクトボックスを作成するはじめにActiveRecordのenumで定義した要素をセレクトボックスを作りたいときの用法用量です。※gemを追加しても同等のことができますがコード量も少ないので自作で進めます。i18n(Internationalization)についてモデルのattributeのi18nは通常、'activerecord.attributes.#{model_name}.#{attribute}'に定義します。Userモデルのnameに適用する場合には、config/locales/ja/activerecord/user.ymlのようなファイルを作成します。いう形でアクセスします。今回は例として、Userがgenderという属性を定義しているとします。genderにはfemaleとmaleというを値を持たせます。}endこの後にしがちな(想定しそうな)yamlの定義の仕方としては下記のような記述でしょうか。attributeの順にネストして直接定義することは出来ません。この場合、以下のような形でモデルと同じ階層に定義してあげる必要があります。定義方法に注目してください。これにより下記のようなアクセスが可能になります。基底モデルにenum専用のメソッドを追加していきます。変更するファイルはapp/models/application_record.rbです。endendこれで、以下のようにアクセスすることが出来ます。最後にselectに値を渡していきます。メソッドを使わなくともこのように書くことも出来ます。{"女性"=>"female","男性"=>"male"}メソッドを追加して記述するとすると下記のようになります。{"女性"=>"female","男性"=>"male"}最後にformに追加します。注目記事このブログについてプライバシーポリシーはてなブログをはじめよう!yuki-eda0629さんは、はてなブログを使っています。ブログを報告する引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。