「送料込み」や「着払い」を選択する度に配送方法の選択肢を変えたい時の
手順についてこちらでご紹介。
1.アクティブハッシュの準備
今回は商品の配送方法についてだったので、以下の選択肢を準備。
class ShippingMethod < ActiveHash::Base
self.data = [
{id: 1, name: '未定'}, {id: 2, name: 'ラクダ便'},
{id: 3, name: 'こうもり便'}, {id: 4, name: 'ゆうメール'},
{id: 5, name: 'レターパック'}, {id: 6, name: '普通郵便(定形、定形外)'},
{id: 7, name: 'クロネコヤマト'}, {id: 8, name: 'ゆうパック'},
{id: 9, name: 'クリックポスト'}, {id: 10, name: 'ゆうパケット'}
]
end
2. HTMl側に表示させる
htmlでとりあえず全ての選択肢を表示させます。
.box_form
.form-title
%span.box-form-explanaion
配送の方法
%span.indispensable
必須
= f.collection_select :shipping_method_id, ShippingMethod.all, :id, :name, {prompt:"選択してください"}, {class: 'exhibit-form-field'}
以上で終了です。
ご覧いただきありがとうございました。