1. ホーム
  2. ruby-on-rails

[解決済み] Railsのモデル、ビュー、コントローラ、ヘルパー:何をどこに置くか?

2022-04-27 13:06:45

質問

Ruby on Rails開発(またはMVC全般)において、ロジックをどこに配置するかは、どのような法則に従えばよいでしょうか。

肯定的にお答えください - With これをここに置く よりも、むしろ それをそこに置いてはいけない .

解決方法は?

MVC

コントローラ : ユーザーが何を望んでいるかを調べ、何を与えるかを決定し、ユーザーがログインしているかどうか、特定のデータを見るべきかどうかなどを判断するコードをここに置きます。最終的には、コントローラがリクエストを見て、どのデータ (モデル) を表示し、どの Views をレンダリングするかを決定します。コントローラにコードを書くべきかどうか迷っているのであれば、おそらく書くべきではないでしょう。コントローラは スキニー .

表示 : ビューはデータ(モデル)を表示するための最小限のコードのみを含むべきで、多くの処理や計算を行うべきではありません。モデルやコントローラではできないような処理をビューで行う必要がある場合は、そのコードをヘルパーに記述してください。Viewの中にRubyのコードがたくさんあると、ページのマークアップが読みづらくなります。

モデル : モデルは、以下の場所に置く必要があります。 すべて データ(ユーザー、投稿、アカウント、友人など、サイトを構成するエンティティ)に関連するコードが格納されています。 もしコードが、あなたの実体に関連するデータを保存、更新、要約する必要があるならば、ここに置いてください。このコードは、ViewsやControllerで再利用することができます。