Ruby on Railsを学ぶ vol2 ~環境設定とhello, world!~

今回は、
Railsの環境設定と画面に「hello, world」と表示するアプリを作りたいと思います。
 
今回の目標

  1. 環境設定
  2. hello, world!

1. 環境設定

今さらですが、私はMacを使っているので
Macで開発を進めていきます。
 
まずはrailsのインストール

$ gem install rails -v 4.2.2

現時点(2016/1/13)での最新バージョンは4.2.5でしたが、ここではRailsチュートリアルと同じバージョンに合わせておきます。
(あとでバージョンの違いで動かなくなったら怖いので・・・)

2. hello, world!

次は、画面に「hello, world!」と表示するアプリを作っていきます。

まずは、Railsアプリを作成するコマンドを実行します。
コマンドは以下の通り

$ rails _バージョン_ new アプリ名

今回は以下のように指定しました。

$ rails _4.2.2_ new hello_app

実行すると、アプリに必要なファイルが作成されます。
その中に、Gemfileがあるので、必要に応じて編集します。

ちなみに、Railsチュートリアルに合わせるとこうなります。

source 'https://rubygems.org'

gem 'rails',                '4.2.2'
gem 'sass-rails',           '5.0.2'
gem 'uglifier',             '2.5.3'
gem 'coffee-rails',         '4.1.0'
gem 'jquery-rails',         '4.0.3'
gem 'turbolinks',           '2.3.0'
gem 'jbuilder',             '2.2.3'
gem 'sdoc',                 '0.4.0', group: :doc

group :development, :test do
  gem 'sqlite3',     '1.3.9'
  gem 'byebug',      '3.4.0'
  gem 'web-console', '2.0.0.beta3'
  gem 'spring',      '1.1.3'
end

うーん、
聞いたことのないgemばかり笑
あとで分かるようになるのかな・・・。

編集が終わったら保存して

$ bundle install

を実行します。

ここまで終われば、あとは画面に「hello, world!」と表示するだけです。
 
先ほどrails newコマンドを実行した時に作成されたファイルの中に

  • application_controller.rb
  • routes.rb

というファイルが作成されているので、それぞれ以下のように修正します。

[application_controller.rb]

class ApplicationController < ActionController::Base
  # Prevent CSRF attacks by raising an exception.
  # For APIs, you may want to use :null_session instead.
  protect_from_forgery with: :exception

  def hello
    render text: "hello, world!"
  end
end

[routes.rb]

Rails.application.routes.draw do
  # You can have the root of your site routed with "root"
  root 'application#hello'
end

ここまで終わったら

$ rails server

を実行します。
そしてブラウザで表示(http://localhost:3000/)すると
①routes.rbが読み込まれる
②root コントローラー名#アクション名が実行される
(今回の場合はapplication_controller.rb) ③application_controller.rbが読み込まれる
④helloメソッドが呼ばれる
⑤hello, world!が表示される
といった具合に処理されるようです。

実行結果は以下の通りです。
f:id:tumiki_jp:20160119061810p:plain
 
 
次回は、今回作成したアプリを一般公開する方法について
書いていきます。
今回はこの辺で。