デフォルトのSpreeは、チェックボックスによるバリエーション登録しかできません。
取り扱う商材によっては、ショッピングカードから様々なオプションを指定できる必要がありますよね。
そんなときに活躍するのがこのエクステンションです。
spree_flexi_variantsができること
このエクステンションは、大きく2つの機能を提供してくれます。
Ad Hoc Optionsと、Product Customizationsです。
Ad Hoc Options
デフォルトのSpreeでは、多くのバリエーションのある商品を取り扱う場合、それらを個別に登録しなければなりません。この機能を使うと、あらかじめオプションのセットを登録しておいてそれを商品に適用できるようになります。
また商品ごとに利用不可のオプションも設定できます。この機能は"Ad Hoc Exclusions"と呼ばれています。
Product Customizations
商品に高度なカスタマイズを加える機能です。例えば「Cut to length 5.82cm」、「'thanks for the memories'と刻印してほしい」、自分の画像をアップロードしたい、、等のオプションを追加できます。これらのオプションは、個別に課金体系も設定することができるようになっています。
公式より画像をお借りしました。こんなイメージです。
エクステンションのインストール
オリジナルのリポジトリはこちらのURLからアクセスできます。
しかしながら、オリジナルはSpreeのバージョン3-0-stable
に対応していません。
下記のフォークが3-0-stable
に対応していたのでこちらを使わせてもらうことにしました。
QuintinAdam/spree_flexi_variants
Gemfile
に下記を追加します。
gem 'spree_flexi_variants', github: 'QuintinAdam/spree_flexi_variants', branch: 'spree-3-0-stable'
コマンドを実行。
bundle install
bundle exec rails g spree_flexi_variants:install
これで完了です!簡単ですね。
必要に応じてbundle exec rake db:migrate
もしてください。
公式ドキュメントはこちら