初期設定

新規Webアプリを作成

$ rails new app_name
$ cd app_name

必要なファイルやライブラリがインストールされる

ライブラリのインストールをスキップ:--no-bundle

サーバーを起動

$ rails s[erver]

サーバー起動時のエラーを修正

$ vi Gemfile

therubyracerのコメントアウトを外す

修正し終わったら、以下のコマンドを実行する

$ bundle install

必要なファイルの作成

$ rails g[enerate] command parameters
コマンド名 コントローラー ビュー モデル マイグレーション アセット ルート テスト ヘルパー
scaffold
scaffold_controller × × × ×
controller × ×
model × × × × ×
migration × × × × × ×
$ rails g[enerate] scaffold name field[:type][:index]... options
$ rails g[enerate] scaffold_controller name options
$ rails g[enerate] controller name action... options
$ rails g[enerate] model name field[:type][:index]... options
$ rails g[enerate] migration name field[:type][:index]... options

ルート(/)にアクセスしたときに表示させるページを変更

config/routes.rbAppname::Application.routes.draw do内に以下のように書く

root 'welcome#index'

データベース

データベースにアクセス

$ rails db[console]

データベースのマイグレーションを実行

$ rake db:migrate

テーブルなどの作成を行う

データベースやオブジェクトをインタラクティブに操作

$ rails c[onsole]

ファイルの編集

ファイルの場所

ビュー(共通) app/views/layouts/application.html.erb
ビューのCSS(共通) app/assets/stylesheets/application.css
ビュー app/views/projects/action_name.html.erb
コントローラー app/contollers/name_controller.rb
モデル app/models/name.rb

コントローラーを設定

app/controllers/projects_controller.rb

HTMLへの埋め込み

<% %>
<%= %>

画像

<%= image_tag "image.jpg" %>

リンク

<%= link_to "Text", "/" %>
<%= link_to "Text", projects_path %>

用語

MVCアーキテクチャ

  • Model:処理
  • View:表示
  • Controller:ModelとViewを制御

DRY(Don't Repeat Yourself)

同じことを繰り返さない

CoC(Convention over Configuration)

設定より規約