# 【勉強メモ】Ruby on Rails01

目次

# メモ

  • view は views ディレクトリに作成される
  • コントローラーを介して view を表示している
  • コントローラのないのメソッドをアクションと呼ぶ
  • ブラウザ → ルーティング → コントローラ → ビュー
  • config/routes.rbにルーティングが定義されている
  • vue の router/index.js, Django の urls.py あたりがイメージしやすい
  • rails generate controller コントローラ名 アクション名
  • 変数の定義
    • ビューで使う変数はアクション内で定義
    • その際に@をつけないとビューでは使用できない
  • ApplicationRecord を継承したクラスをモデル
    • https://railsguides.jp/active_record_basics.html
    • ORM の FW?
  • posts/:id で渡されるものをcontrollerのアクション内で取得
    • @id = params[:id]
  • フォームの値を受け取る場合はroutingにはpostと記載
  • form_tagメソッドで受け取り先のroutingを指定
  • リダレクトはredirect_to(routing先)
  • rails new アプリ名rails generate controller コントローラ名 アクション名 → このタイミングでコントローラとビューが作成 → config/routes.rbにroutingを定義 get コントーラ名#アクション名 → コントローラ内にアクションを定義routes.rbで渡したコントローラ名_controller.rb内でアクションを定義
  • DB作成から先の作業
    • rails g model テーブル名(単数形) カラム名:データ型 (rails g model Post content:text) → rails db:migrateでマイグレーションをDBに反映 → modelsの中にApplicationRecordを継承したPostクラスが定義される → postという変数にPostクラスから新しいPostインスタンスを作成して代入 post = Post.new(content: "content内容") → post.saveでpoststableにsave