Ruby on Railsに必要な環境

  • rubyとgemコマンドを使えるようにしておく
  • gem install rails する

コードを書き始める前に

rails new する

$ rails new アプリ名 

カレントディレクトリ以下にアプリ名のディレクトリが作成できる*1

rails server

ビルトインのhttpサーバ使わない系なんだけど、ruby on railsではこれが一般的らしく、apacheで動かすみたいなことはあまり考えないらしいので、とりあえず使う。rails newでできたディレクトリ内で実行する
デフォルトのポート番号は3000でlocalhostで動かす前提らしいのでうちの環境だと

$ rails server -b IPアドレス

としないといけない(ipfwの設定でLAN内のTCP3000を解放した)

  • h オプションで他のオプションの説明が読める

http://IPアドレスで指定したアドレス:3000/ にアクセスするとRuby on Railsに乗れて良かったね的な表示を見ることが出来る

Hello World

どこかにHello Worldって書いたらすぐに表示させて欲しい気がするけどそうは行かない。
色々お作法がある

まず、app/controllers/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

Hello Worldを書いたけどこれだけだとまだ表示は変わらない
↑で追記したhelloを呼び出すためのルーティングをconfig/routes.rbに書く

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

これを書いてブラウザをリロードするとHelloWorldが表示される。*2