Railsで簡単なアプリケーションを作る
開発環境はWindows 7 Professional(32bit)+Ruby 2.3.3p222+Rails 4.2.1。
WindowsでRuby on Railsを導入するまでの手順 - k01ken’s b10g
前回の続きです。
簡単なアプリケーションといってもトップページを修正するぐらいです。
1.まず、開発用のフォルダをCドライブ直下に作る。railsとする。
2.コマンドプロンプトを実行し、カレントディレクトリを、C:\railsにします。Railsでアプリケーションを作成するためには、モデルやコントローラの作成、サーバーの起動などにrailsコマンドを使います。
アプリケーションを作成するためにはコマンドプロンプト上でrails new 作成するアプリケーション名と入力して作成します。
とりあえず、以下のコマンドを入力して作成。
rails new app --skip-bundle
railsフォルダ内に、appフォルダが作成され、中に、いくつかのファイルができたと思います。
3.コマンドプロンプトでカレントディレクトリをappフォルダに指定して、bundle installと入力してください。bundleとは、Gemパッケージの管理とインストールを行うためのツールです。
Railsアプリケーションでは、たくさんのGemパッケージを必要としますが、複数の開発者が共同で開発を進めるときに、開発者同士で同じバージョンのGemパッケージを用意しなければならないと不都合なので(開発用パソコンと本番サーバーの間でも同様)、Bundlerは、必要なGemパッケージをリストアップし、複数のコンピュータ間で簡単に同期が取れるようにするものです。(作ったアプリとGemfile.lockを渡し、受け取った側は受け取ったアプリ内でbundle installを行う)
rails new 作成するアプリケーション名と入力すれば、自動的に、bundle installが実行されます。説明するために、さっきはスキップするオプションを追加しました。
4.作成したアプリケーションを起動してみたいと思います。
コマンドプロンプトで、
ruby bin/rails s
と入力して、サーバーを起動して、Webブラウザでhttp://127.0.0.1:3000/または、http://localhost:3000/のURLにアクセスしてください。
上記のようなページが表示されたら成功です。
[注意]これから、.erbや.rbなどのファイルを保存する際の文字コードはUTF-8かUTF-8Nで保存してください。(自分の場合は、TeraPadを使っていて、保存すると自動的にUTF-8Nで保存されるようにしています)
5.コントローラを作成
コントローラの作成にはruby bin/rails gコマンドで作成します。ruby bin/rails g controller コントローラ名 アクション名(アクション名の部分は省略して後から定義しても構いません)で、コントローラとアクションを作成できます。ここでは、TopControllerとindexアクションを作成します。
ruby bin/rails g controller top index
と入力したらapp/controllersにtop_controller.rbが作成されたと思います。
6.ルーティングの設定
config/routes.rbを開き、Rails.application.routes.draw doとendの間の記述をすべて削除して、
root "top#index"
と書き直します。これによって、トップページにアクセスすると、views/top/index.html.erb内の内容が表示されます。
7.ビューの作成
次は、indexアクションに対応したビューを編集してみます。
app/views/top/index.html.erbを開き、中身を
<h1>こんにちは</h1> <p>トップページが表示されました</p>
に書き換えてください。そして、もう1度、トップページにアクセスすると、
と修正されたと思います。
8.変数を使う
controllers/top_controller.rb内を以下のように修正。
class TopController < ApplicationController def index @message = "変数です" # ここを追加 end end
views/top/index.html.erb内を以下のように修正
<h1>こんにちは</h1> <p>トップページが表示されました</p> <p><%= @message %></p>
indexアクション内の変数が、表示されたと思います。