Yuki Matsumoto

To be engneer soon / Ruby on Rails

ルーティングの作成

2019-02-14 Yuki MatsumotoRuby on Rails

今日はルーティングを作成します。

Railsアプリ開発において根幹の概念であるMVCを作っていきます。 まずは、クライアントからHTTPリクエストをcontrollerに渡すための役割をするrouteを作成します。

Routeの作成

今回はアイデアを投稿してフィードバックをもらえるSNS型のサービスを作ってみようと思います。

まずはルーターを編集します。

場所はconfig -> route.rb

ファイルの中身はこんな感じ。

Rails.application.routes.draw do
  # For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html
end

doブロックの中にルールを記述していく

  resources :ideas
  # For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html
end

これでルーティングが作成される

確認方法は以下のコマンドを実行

bundler exec rails rails routes

そうすると以下が表示された

Prefix Verb   URI Pattern                                                                              Controller#Action
                    ideas GET    /ideas(.:format)                                                                         ideas#index
                          POST   /ideas(.:format)                                                                         ideas#create
                 new_idea GET    /ideas/new(.:format)                                                                     ideas#new
                edit_idea GET    /ideas/:id/edit(.:format)                                                                ideas#edit
                     idea GET    /ideas/:id(.:format)                                                                     ideas#show
                          PATCH  /ideas/:id(.:format)                                                                     ideas#update
                          PUT    /ideas/:id(.:format)                                                                     ideas#update
                          DELETE /ideas/:id(.:format)                                                                     ideas#destroy
       rails_service_blob GET    /rails/active_storage/blobs/:signed_id/*filename(.:format)                               active_storage/blobs#show
rails_blob_representation GET    /rails/active_storage/representations/:signed_blob_id/:variation_key/*filename(.:format) active_storage/representations#show
       rails_disk_service GET    /rails/active_storage/disk/:encoded_key/*filename(.:format)                              active_storage/disk#show
update_rails_disk_service PUT    /rails/active_storage/disk/:encoded_token(.:format)                                      active_storage/disk#update
     rails_direct_uploads POST   /rails/active_storage/direct_uploads(.:format)                                           active_storage/direct_uploads#create

/ideasのルーティングが作成されたことが確認できた。

まとめ

今回はルートを作成しました。
本当はcontrollerまで進める予定でしたが、ワイヤーをざっくり決めるのに少し時間が取られてしまったため、思った以上に進みませんでした。明日はcontrollerとmodelをいじるところまで進めていく予定です。