railsメモ

rails

静的コンテンツの表示

(アプリケーションのルート)/publicフォルダに入っているものは静的コンテンツとして扱われ、http://localhost:3000/start.htmlのようにアプリケーションのルートパスからアクセスできる

コントローラの生成

でコントローラー生成

以下のようなクラスが出来上がる

アクションの生成

コントローラークラスの中にメソッドを作成する

render :text => 'hello'はApplicationControllerのrenderメソッドに{:text=>’hello’}なハッシュをキーワード引数として渡している
詳しくはこの記事

ルーティングの設定

config/routes.rbを編集する

http://guides.rubyonrails.org/routing.htmlを見ればルーティングの設定例が書かれているが簡単なものを出すとこんな感じ

ビューへの受け渡し

.html.erbファイル(ビューテンプレート)をviewsフォルダに作成する。
viewsフォルダの中に{controller名}/{action名}.html.erbのディレクトリ構造で入れるととてもよい
中身はとりあえずこんな感じ

DBの作成

以下のコマンドでDB作成

dbフォルダ内に以下の3つのファイルができる

  • development.dqlite3(開発用db)
  • test.sqlite3(テスト用db)
  • seeds.rb(初期値挿入用スクリプト)

モデルの生成

以下のコマンドでモデル生成

とりあえずフィールドなしでモデル作成

マイグレーション

db/migrateフォルダの中にマイグレーションファイルができている(DB生成時)
この中を編集してDBのカラムをマイグレーションする

マイグレーションファイルを編集したら以下のコマンドでマイグレーション

テストデータの生成

ssed.rbファイルを編集してテストデータをいれる

以下のコマンドで初期値挿入

モデルへのアクセス

生成されたモデルクラスを利用してコントローラーからアクセスする

json、xmlの返却

renderメソッドのjsonオプションにオブジェクトをいれる

xmlでも同様

パラメータの取得

paramsメンバー(ハッシュ)に入っている

こんな感じhttp://localhost:3000/hello?hoge=mogeでアクセスが起こった場合
こんな感じでクエリパラメータを取得できる

POSTでも同様