Ruby on Railsでアプリケーションを作る。#
Ruby on RailsはWebアプリケーションの開発を変えたといっても過言ではない、Webアプリケーション開発の仕組みです。
ここではRuby on RailsでWebアプリケーションを作る方法を体験していきます。
前提#
Node.jsをインストールされていること Mac / Linuxの場合Homebrewがインストールされていること
環境設定#
まず、Rubyをインストールします。 最初に、ディレクトリを作成、移動します。 以下のコマンドをターミナル(もしくはコマンドプロンプト。以下ターミナルに寄せます。)で実行します。
mkdir rails_inspect
cd rails_inspect
Mac / Linux#
まず、rbenvという、rubyをインストールしてくれるソフトウェアをインストールします。
設定を行います。以下のコマンドをターミナルで実行してください。
echo 'export PATH=~/.rbenv/bin:$PATH' >> ~/.bash_profile && echo 'eval "$(rbenv init -)"' >> ~/.bash_profile && source ~/.bash_profile
次に、rbenvのインストールを行います。
brew install rbenv ruby-build
そして、rubyのインストールを行います。
rbenv install 2.7.1
最後に、今いるディレクトリで2.7.1を使うぞということを宣言します。
rbenv local 2.7.1
今いるディレクトリに.ruby-versionというファイルが作成され、そこに2.7.1を使うぞということが記載されます。
これでrubyの利用準備が整いました。
Windows#
https://rubyinstaller.org/downloads/ から Ruby+Devkit 2.7.{数字}-{数字} (x86)をダウンロード、インストールしてください。
Bundlerのインストール#
この後は、Mac / Windows共通です。 Bundlerをインストールします。 Bundlerは今いるディレクトリに必要なライブラリをインストールしてくれるソフトウェアです。 ターミナルで以下のコマンドを実行してください。 実行するディレクトリは最初に作ったrails_inspectディレクトリです。
gem install bundler
Railsコマンドのインストール#
Railsをコマンドで実行したいため、gemでインストールします。
gem install rails
yarnのインストール#
yarnとは、フロントエンドを開発するためのライブラリを管理するツールです。Railsがyarnに依存しているためにインストールします。
npm i -g yarn
今いるディレクトリをRailsプロジェクトにする。#
今いるディレクトリをbundler管理にします。
bundler init
Gemfileというファイルが出来上がります。
Gemfileに以下の行を追加します。
gem "rails"
追加したら保存し、bundlerでインストールを行います。
bundler install
これでrailsをこのディレクトリで実行するためのライブラリインストールされました。 今いるディレクトリでrailsを開発できるようにします。
rails new . -f
これでRailsが起動できるようになりました。起動してみましょう。
rails s
ブラウザでhttp://localhost:3000 にアクセスして、
のような画面が出れば成功です。
次にサーバの処理を追加していきます。 一旦サーバを停止するために、ターミナルで、Control(もしくはCtrl)を押しながらCキーを押しておいてください。
APIを作成#
Railsでサーバの処理を追加するにはControllerというファイルを追加します。
app/controllers/hello_controller.rb にファイルを追加します。
class HelloController < ApplicationController
def index
message = {'text' => 'こんにちは!'}
render :json => message
end
end
HelloControllerは、classの中にdefで宣言されたindexメソッドがある、という構造でできています。 このindexメソッドをブラウザから呼び出せるようにします。 呼び出せるようにするためには config/routes.rb を以下のように修正します。
Rails.application.routes.draw do
# For details on the DSL available within this file, see https://guides.rubyonrails.org/routing.html
get "/hello", to: "hello#index" # 追加
end
get アクセスを /hello にすると、 HelloControllerのindexメソッドを実行する、という行を追加しています。 これで処理を追加できました。サーバを起動してみます。
rails s
ブラウザで、http://localhost:3000/hello にアクセスします。
このような表示がされれば、完成です!
次は、改めてRailsにコントローラを追加してみましょう!