LoginSignup
1
0

More than 3 years have passed since last update.

1アクションで複数のビューを切り替えて表示しようとしたが、結局1アクション1ビューが良いという話

Last updated at Posted at 2020-04-06

●はじめに

今回がQiita初投稿です。ポートフォリオを作成中に学んだ事をアウトプットする事を目的に始めました。
初歩的な内容が多いかと思いますが、是非、これからポートフォリオを作成する方に対し、役立てればという思いで発信しております。

●概要

トップページに「投稿一覧」「いいねした投稿一覧」「自分の投稿一覧」というリンクを作成し、それぞれを1つのindexアクションにまとめようとようとした。しかしやはり基本的には1アクション1ビューが良いとのことでした。

●理由

・1つにまとめてしまうと、対応するURLがわかりにくくなる
・Railsの設計思想であるMVCの観点からやはり望ましい

●実装方法

ちなみに、それでもあえて1つにまとめたいなら、パラメータを利用します。

if params[:name] == "post"
 @questions  = Post.all
elsif params[:name] == "like"
  処理
elsif params[:name] == "user_post"
  処理

ですがおすすめとしてはアクションで分けてしまう事。
「例1」
・posts#index
・users#like_index
・users#post_index

リソースでまとめたいというこだわりがあるのであればコントローラーを作成する方法も。
「例2」
・posts#index
・users#show
・users::favorite#index

●まとめ

Railsの場合は1アクション1ビューという基本を守った方が良い。
その場合、実装方法には様々な方法があるため、色々試して見るとより理解が深まるかもしれません。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0