0

これは一種の「ベスト プラクティス」の質問ですが、それが良いプラクティスではない場合でも、このタイプのコーディングを行うことの意味を知りたいです-使いやすさ、スケーラビリティの観点から

http://rails-bestpractices.com/posts/24-move-code-into-controllerによると

ビューから変数をインスタンス化するのではなく、最初にコントローラーでインスタンス化する必要があります

その代わりに、対応するコントローラーにある<% @posts = Post.find(:all) %> 必要があります @posts = Post.find(:all)

コードで rails best practice gem を実行すると、次のような行でエラーが発生しました

 <% @msgs_by_sender.keys.each do |uid| %>
 <% @user = User.find(uid) %>

これは基本的uidに、コントローラーで以前に計算された配列の配列から取得された user_id です。次に、uid を取得したら @user を取得するので、作業が簡単になります

私の質問は、このコードが機能し、何も爆発しなかったことを知っているので、そのままにしておいてもかまいません。しかし、代わりにこの種のラインを使用することには、長期的な利点がありますか?

@users = User.find(@msgs_by_sender.keys)
4

1 に答える 1