hello-world
webエンジニアのメモ。とりあえずやってみる。

[rails]Active Adminのformでjp_prefectureを使う

公開日時

都道府県データを扱う際に、都道府県マスターデータをどうしようかなと思っていたところ、 chocoby/jp_prefectureというgemを発見し、こちらを使わせていただきました。

モデルにはprefecture_codeというカラムを用意しておくだけでいいので、都道府県データの扱いがスッキリしますね。

通常のフォーム使用時の場合は

f.collection_select :prefecture_code, JpPrefecture::Prefecture.all, :code, :name

とすれば都道府県のセレクトボックスをいい感じに作成してくれるのですが、ActiveAdminのフォームで使用する場合は記述が異なるので、以下のようにmapで配列を加工するようにしました。

form do |f|
  f.inputs "Details" do
    f.input :name
    f.input :prefecture_code, as: :select, collection: JpPrefecture::Prefecture.all.map {|prefecture| [prefecture.name, prefecture.code]}
  end
end

参考


Related #Rails

[rails]国際化対応でlocaleを省略したURLのrouting設定

タイトルだけだとよくわからないですね サンプルサイトとして、

[Rails]日付と時間の入力フォームにDateTimePickerを使う(bootstrap3-datetimepicker-rails)

Ruby2.1.0, Rails4.1で確認 フォームで日時を入力する際に、カレンダーを表示して入力サポートをするDateTimePickerを導入したかったので調べてみました。

[rails]carrierwaveで特定のuploaderだけ別のs3バケットを使いたい場合

carrierwaveの保存先にs3を使用する場合、config/initializers/carrierwave.rb にs3の設定を書くと思いますが、 特定のuploaderだけ普段とは別のs3バケットを使いたい場合どうやるのかを調べてみました。

[Rails]ActiveAdminでCSVダウンロード機能をカスタマイズする

ActiveAdminにはcsvダウンロード機能がデフォルトついているのですが、デフォルトのままだと一括でcsvデータを取得することができません。(管理画面表示1ページあたりの表示件数分になるので30件しか取得できませんでした)