Spree2.0をいじってみた。
今年の3月にSpreeの2.0がリリースされたので、いじってみました。
何はともあれSpreeを入れてみる
Getting startedに沿って設定していきます。
$ sudo apt-get install imagemagick $ gem install rails bundler spree_cmd $ rails new mystore $ cd mystore $ spree install $ rails s
ショップ画面
管理画面
エクステンション
Spreeには、アプリケーションを拡張するためのエクステンションが存在します。
Spree Extension Registryには、現在320個ほど登録されています。
エクステンションを入れてみる
ここでは、spree_fancyというエクステンションを入れてみます。
#Gemfile gem 'spree_fancy', git: 'git://github.com/spree/spree_fancy.git'
$ bundle install $ bundle exec rails g spree_fancy:install append app/assets/javascripts/store/all.js append app/assets/javascripts/admin/all.js insert app/assets/stylesheets/store/all.css insert app/assets/stylesheets/admin/all.css run bundle exec rake railties:install:migrations FROM=spree_fancy from "." run bundle exec rake db:migrate from "." == AddSliderTaxonsAndApplyThem: migrating ================= == AddSliderTaxonsAndApplyThem: migrated (1.0647s) ========
spree_fancy適用後のショップ画面
spree_fancyの削除
さくっと調べた感じだと、spree_fancyを一発でアンインストールできるコマンドはありません。
インストール時に表示された
- app/assets/javascripts/store/all.js
- app/assets/javascripts/admin/all.js
- app/assets/stylesheets/store/all.css
- app/assets/stylesheets/admin/all.css
あたりのspree_fancyに関する記述を削除すれば、とりあえずはspree_fancy適用前の状態に戻せます。
《2013-05-25 追記》
上で「とりあえず戻せる」と書きましたが、この方法で戻すと、後々日本語化をしたときにRoutingErrorが発生しました。*2
エクステンションの作成
上記のspree_fancyのような便利なエクステンションですが、もちろん自分でも作ることができます。
作り方はこちらにあります。
このあたりは気が向いたら別エントリで書きます。気が向いたら。
Next
*1:spree install実行時にバージョン関係のエラーが出ることがあります。その場合はGemfileで「gem 'spree_auth_devise', :git => 'https://github.com/spree/spree_auth_devise.git', branch: '2-0-stable'」などのようにbranchを指定してください。
*2:spree_fancyが使用しているテンプレートに含まれているnested_taxons_pathという名前付きルートにidを渡さなければならないところを、idなしで呼び出しているためにRoutingErrorが発生している模様。