[解決済み] Railsのモデル、ビュー、コントローラ、ヘルパー:何をどこに置くか?
2022-04-27 13:06:45
質問
Ruby on Rails開発(またはMVC全般)において、ロジックをどこに配置するかは、どのような法則に従えばよいでしょうか。
肯定的にお答えください - With これをここに置く よりも、むしろ それをそこに置いてはいけない .
解決方法は?
MVC
コントローラ : ユーザーが何を望んでいるかを調べ、何を与えるかを決定し、ユーザーがログインしているかどうか、特定のデータを見るべきかどうかなどを判断するコードをここに置きます。最終的には、コントローラがリクエストを見て、どのデータ (モデル) を表示し、どの Views をレンダリングするかを決定します。コントローラにコードを書くべきかどうか迷っているのであれば、おそらく書くべきではないでしょう。コントローラは スキニー .
表示 : ビューはデータ(モデル)を表示するための最小限のコードのみを含むべきで、多くの処理や計算を行うべきではありません。モデルやコントローラではできないような処理をビューで行う必要がある場合は、そのコードをヘルパーに記述してください。Viewの中にRubyのコードがたくさんあると、ページのマークアップが読みづらくなります。
モデル : モデルは、以下の場所に置く必要があります。 すべて データ(ユーザー、投稿、アカウント、友人など、サイトを構成するエンティティ)に関連するコードが格納されています。 もしコードが、あなたの実体に関連するデータを保存、更新、要約する必要があるならば、ここに置いてください。このコードは、ViewsやControllerで再利用することができます。
関連
-
[解決済み】Rails: sudo "コマンドが認識されないのはなぜですか?
-
[解決済み] pg gem をインストールしようとすると 'libpq-fe.h' ヘッダが見つからない
-
[解決済み] heroku open - no app specified
-
[解決済み] ウェブパッカーがアプリケーションを見つけ出せない
-
[解決済み] MVPとMVC、その違いは何ですか?
-
[解決済み] Ruby on Railsで、DateTime、Timestamp、Time、Dateの違いは何ですか?
-
[解決済み] Rails 3.1 を使用して、「ページ固有」の JavaScript コードをどこに置くか?
-
[解決済み] モデルデータや振る舞いをどこに置くか?[tl; dr; サービスを利用する]
-
[解決済み】Rubyのメソッドで感嘆符が使われるのはなぜ?
-
[解決済み】Ruby on Railsはモデルのfield:typeを生成します - field:typeのオプションは何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] RailsのRootディレクトリのパス?
-
[解決済み] rspec 3 - クラスメソッドをスタブ化する
-
[解決済み] Railsでpng画像を文字列形式で表示するには?
-
[解決済み] Oauth2 Instagram API "リダイレクトURIが登録されたリダイレクトURIと一致しない"
-
[解決済み] nil:NilClass の未定義メソッド `each'... なぜ?
-
[解決済み] Herokuの問題 : あなたが探しているページは存在しません。
-
[解決済み] RoRにおけるSpringサーバーの機能とは?
-
[解決済み] Devise Admin Roleの追加【終了しました
-
[解決済み] Heroku: 既存のrailsアプリにseeds.rbをプッシュする方法?
-
[解決済み] ActionController::RoutingError: 初期化されていない定数MicropostsController