ハイパーニートプログラマーへの道

頑張ったり頑張らなかったり

【Ruby on Rails】Controllerを作る

Controllerを作る

#07 Controllerを作ってみよう | Ruby on Rails 4入門 - プログラミングならドットインストール

$ rails g controller Projects
  • モデルと違って複数

routingの設定

config/routes.rb

Rails.application.routes.draw do

  resources :projects
$ rake routes
      Prefix Verb   URI Pattern                  Controller#Action
    projects GET    /projects(.:format)          projects#index
             POST   /projects(.:format)          projects#create
 new_project GET    /projects/new(.:format)      projects#new
edit_project GET    /projects/:id/edit(.:format) projects#edit
     project GET    /projects/:id(.:format)      projects#show
             PATCH  /projects/:id(.:format)      projects#update
             PUT    /projects/:id(.:format)      projects#update
             DELETE /projects/:id(.:format)      projects#destroy

Projectsの一覧を表示する

#08 Projectsの一覧を表示させよう | Ruby on Rails 4入門 - プログラミングならドットインストール

アクションの定義

  • indexアクションを作る
  • Projectすべてを@projectsに代入

app>controllers>projects_controller.rb

class ProjectsController < ApplicationController

  def index
    @projects = Project.all
  end
end

Viewの作成

app/views/projects

アクションと同じ名前のindexで作る。

index.html.erb

<h1>Projects</h1>

<ul>
  <% @projects.each do |project| %>
  <li><%= project.title %></li>
  <% end %>
</ul>
  • @projectsをループさして、タイトルを表示
  • <%= %>で式の内容を評価して表示する
$ rails s

f:id:noriyo_tcp:20140926215802p:plain