見出し画像

Railsの始め方

railsでアプリを作っていて改めて違うアプリを作るときに、あれ?何から始めるんだっけな、、、となったので詳細は省いてとりあえずこれだけやればいいってものだけをメモ。

1. アプリを作成する

% rails [version] new [app_name] -d [database]

rails new コマンドで作成。railsバージョンとアプリ名、-dで使用するデータベースを指定できる。

 % rails _5.2.3_ new my-app -d mysql

2. DBを作成する

% cd my-app
% rails db:create
Created database ‘my-app_development'
Created database ‘my-app_test'

1で作成されたmy-appフォルダに移動してdb:createを実行すると開発環境とテスト環境のDBが作成される。

3. コントーラを作成する

% rails g controller [controller_name]

rails g controllerでコントーラを作成する。ここでコントローラ名は通常複数形にすることに注意!

% rails g controller articles

4. モデルを作成する

% rails g model [model_name]

rails g modelでモデルを作成する。モデル名は単数形!

% rails g model article

5. マイグレーションファイルの編集

[app_name] > config > db > migrate に作成されたマイグレーションファイルを編集する。

class CreateArticles < ActiveRecord::Migration[5.2]
 def change
   create_table :articles do |t|
     t.string :title
     t.text :text
     t.timestamps
   end
 end
end

編集後にdb:migrateを実行する。

% rails db:migrate

6. viewファイルを作成する

[my-app] > app > views > [model_name] の配下にindex.htmlを作成する。

<div>hello, world!</div>

ここでindexはアクション名になる。例えばarticleモデルにshow.htmlを作成した場合はarticlesコントローラでshowアクションを定義した際に表示されるviewファイルとなる。

7. routes.rbを編集する

[my-app] > app > config 配下にあるroutes.rbを編集する。

Rails.application.routes.draw do
 root to: 'articles#index'
end

とりあえずroot_urlにアクセスした時の処理を書いておく。
'[controller_name]#[action]'の記法で書くとコントローラとアクションに対応したviewが表示される。

8. ローカルサーバを立ち上げる

% rails s

rails s でローカルサーバを立ち上げて http://localhost:3000 にアクセスする。
以下のように表示されれば成功。

画像1

あとは各コントローラの処理やらviewファイルを作り込んでいくべし!

サポートいただけましたら椅子から転げ落ちて喜びます。