前提
- Rspec使う
 - FactoryGirl使う
 - sass使う
 - haml使う
 
Bundlerのひな形ファイルを生成
$ mkdir blogapp
$ cd blogapp
$ bundle init
Gemfileをほしい形に直す
source "https://rubygems.org"
gem 'rails', '4.0.0'
gem 'turbolinks'
# Use ActiveModel has_secure_password
gem 'bcrypt-ruby', '~> 3.0.0'
# gem 'jbuilder', '~> 1.2'
gem "twitter-bootstrap-rails", "~> 2.2.8"
gem 'bootstrap-sass', '2.3.2.0'
gem 'jquery-rails'
group :assets do
  gem 'sass-rails', '~> 4.0.0'
  # Use Uglifier as compressor for JavaScript assets
  gem 'uglifier', '>= 1.3.0'
  # Use CoffeeScript for .js.coffee assets and views
  gem 'coffee-rails', '~> 4.0.0'
  gem 'haml-rails'
end
group :doc do
  # bundle exec rake doc:rails generates the API under doc/api.
  gem 'sdoc', require: false
end
group :development do
  gem 'erb2haml'
  gem 'capistrano'
  gem 'annotate', '2.5.0'
  # deploy settings
  gem 'capistrano'
  gem 'capistrano-rails'
  gem 'capistrano-rbenv'
  gem 'capistrano-bundler'
end
group :development, :test do
  gem 'sqlite3'
  gem "rspec-rails", "~> 2.14.0"
  gem "factory_girl_rails", "~> 4.2.1"
  gem 'pry-rails'
  gem 'pry-doc'
end
group :test do
  gem "faker", "~> 1.1.2"
  gem "capybara", "~> 2.1.0"
  gem "database_cleaner", "~> 1.0.1"
  gem "launchy", "~> 2.3.0"
  gem "selenium-webdriver", "~> 2.35.1"
end
group :production do
  gem 'pg', '0.12.2'
  gem 'unicorn'
end
おもむろにbundle install
忘れずにpath指定!暫し待つ。。
$ bundle install --path vendor/bundle
Rails初期化
bundlerでのもろもろインストールが無事終わったら、この状態でRailsアプリを作成
さっき作ったアプリ名のディレクトリ内に居るはずなので、アプリ名は指定しないで.でOK
Rspecを使いたいのでデフォルトのtest::unitが組み込まれないように-Tも付ける。
$ bundle exec rails new . -T
Rspec使えるようにする
$ bundle exec rails g rspec:install
.rspecの設定を付け加える
--format documentation
Rspecで自動生成させる対象を指定する
Rspec初心者なので、modelとcontrollerのテストだけ自動生成させるようにする。
FactoryGirl使う設定も忘れずに。
config.generators do |g|
  # Rspec settings
  g.test_framework :rspec,
    fixtures: true,
    view_specs: false,
    helper_specs: false,
    routing_specs: false,
    controller_specs: true,
    request_specs: false
  g.fixture_replacement :factory_girl, dir: "spec/factories"
end
設定続き
hamlとsass使いたいのでその設定もする。
config.generators do |g|
  g.template_engine :haml
end
config.sass.preferrd_syntax = :sass
config.sass.syntax = :sass
Hamlの設定
既存のerbをhamlに変換
$ bundle exec rake haml:convert_erbs
作ったばかりなので、app/views/layoutsの下にerbがあるだけ。
hamlになったので、いらない方消しとく。
$ rm app/views/layouts/application.html.erb
git
うぎゃーとなる前にvendor/bundle以下がリポジトリにはいらないようにしておく。
/vendor/bundle
$ git init
$ git add .
$ git commit -m "Initial commit"
確かめる
ちゃんと思った通りに設定されているか、scaffoldしてみる。
$ bundle exec rails g scaffold Page name:string content:text
ふう。やっと始められる。。
簡易ブログ作ってみよう。
参考書 : Everyday Rails… Aaron Sumnerによる et al. [Leanpub PDF/iPad/Kindle]
とっても良い本。勉強中。。