Userオブジェクトに関数を追加したいので、これを行うためのユーザコントローラを作成しました(私はDeviseを使用していますので、既存のDeviseユーザに関数を追加する必要があります)オブジェクト)。私は、私のレールプロジェクトに「ヘルパー」というフォルダがあることに気づきました。コントローラーの代わりに余分な機能を置くべきですか?その方法は、匿名のセッションを可能にすることです。Helpers vs Controller in Rails
0
A
答えて
4
シンコントローラと脂肪モデル。レールアプリケーションの作成時にこの原則に従ってください。あなたのロジックといくつかの計算をモデルに必要ならば入れてください。コントローラは、ビューに渡すデータとデータを表示する方法を制御するために使用されます。ヘルパーのビュー表示に役立つメソッドだけを置く。例えばヘルパーの中に数字を形作るためのコードを書いてください。コントローラ間でいくつかのソースコードを共有したいがモデルに収まらない場合は、ライブラリを作成することができます。
1
常に薄いコントローラが優れています。だから、ヘルパーフォルダにあなたのコントローラ/ビューを "助ける"ものを入れてください。
2
あなたはUser
クラスにメソッドを追加したい場合は、いいえ、user.rb
ファイルに追加します。あなたは、コントローラとビュー内で使用可能な方法をしたい場合は
class User < ActiveRecord::Base
def full_name
# logic
end
end
が、その後、定義ヘルパーディレクトリの中にヘルパーを追加してそこに追加します。
関連する問題
- 1. Helpers in Railsエンジン
- 2. Rails 2 route helpers in plugin
- 3. AbstractController :: Helpers :: RailsのMissingHelperError :: WelcomeController#index
- 4. Rails 5 ActionView :: Helpers capture method
- 5. Yii1:Controller :: beforeRender in Yii2
- 6. AngularJs setDirty in Controller
- 7. setlocale()in Controller Laravel
- 8. Request :: $ controller in Kohana
- 9. HttpPost ActionResult in Controller
- 10. Rails Controller Query
- 11. Spring、Entity vs Model vs Controllerのパッケージ構造
- 12. Shoulda-helpers - Rspec
- 13. concat in FSharp.Core.String vs Concat in System.String
- 14. readInt16()in c#vs readShort()in java
- 15. Laravel Foreach Controller vs表示
- 16. BracketHighlighter in vsコード
- 17. Nunit in VSチュートリアル
- 18. vs String in .NET
- 19. angle-translate translate dict in controller
- 20. 404 in Controllerアクションメソッド:Laravel 5.2.37
- 21. in in Railsの
- 22. Rails:Views:content_tag helpers
- 23. const vs enum in D
- 24. onprojected vs catch in promise
- 25. model.predict_classes vs model.predict_generator in keras
- 26. Grid-Media IN vs OUT
- 27. $ in vs $または
- 28. tf.argmax()vs tf.arg_max()in TensorFlow
- 29. std :: wcstok in VS 2015
- 30. http.get vs http.request in Angular