LoginSignup
20
20

More than 5 years have passed since last update.

Rails4 初期設定

Last updated at Posted at 2014-04-14

前提

  • 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/application.rb
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/application.rb
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]

とっても良い本。勉強中。。

20
20
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
20
20