[解決済み】helperとhelper_methodは何をするのですか?
2022-04-09 11:22:18
質問
helper_method
は、コントローラのメソッドの一部または全部をビューで使用できるようにするという、単純なものです。
とは
helper
? 逆に、ファイルやモジュールにヘルパーメソッドをインポートするのでしょうか? (多分、名前
helper
と
helper_method
は似ています。それらはむしろ
share_methods_with_view
と
import_methods_from_view
)
解決方法は?
方法
helper_method
は、コントローラで定義されたいくつかのメソッドを明示的に共有して、 ビューで使用できるようにするものです。これは、コントローラとヘルパー/ビューの両方からアクセスする必要があるメソッド (標準的なヘルパーメソッドはコントローラでは使用できません) に使用します。 例: よくある使用例です。
#application_controller.rb
def current_user
@current_user ||= User.find_by_id!(session[:user_id])
end
helper_method :current_user
その
helper
メソッドは、コントローラ (およびそれを継承したコントローラ) が提供するビューのヘルパー全体をインポートするためのものです。これはつまり、次のようなことです。
# application_controller.rb
helper :all
Rails 3.1用
# application.rb
config.action_controller.include_all_helpers = true
# This is the default anyway, but worth knowing how to turn it off
は、すべてのヘルパーモジュールをすべてのビューで利用できるようにします (少なくとも application_controller を継承したすべてのコントローラで)。
# home_controller.rb
helper UserHelper
は、ホームコントローラのアクションに対して、UserHelper のメソッドをビューで使用できるようにします。これは、次のようにすることと同じです。
# HomeHelper
include UserHelper
関連
-
[解決済み】取得中。「プロジェクトのクローンとマイグレート後に、「マイグレーションは保留中です。この問題を解決するには 'bin/rake db:migrate RAILS_ENV=development' を実行してください。
-
[解決済み] pg gem をインストールしようとすると 'libpq-fe.h' ヘッダが見つからない
-
[解決済み] RailsのRootディレクトリのパス?
-
[解決済み] Rubyで変数をインクリメントする [重複]。
-
[解決済み] Railsでpng画像を文字列形式で表示するには?
-
[解決済み] Herokuの問題 : あなたが探しているページは存在しません。
-
[解決済み] RVMでRubyのデフォルトバージョンを設定するには?
-
[解決済み] Devise Admin Roleの追加【終了しました
-
[解決済み] gemのアップデート後、"Asset was not declared to be precompiled in production "でテストが失敗する。
-
[解決済み] rails/rubyでgroup_byを使用する。
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] サーバーに接続できませんでした。そのようなファイルまたはディレクトリがありません (PG::ConnectionBad)
-
[解決済み】OS X Yosemite 10.10.5 で [Ruby on Rails] 5 をインストールすると extconf が失敗して終了コード 1 エラーになる。
-
[解決済み] gemのインストールができない - gemネイティブ拡張の構築に失敗 - そのようなファイルをロードできない -- mkmf (LoadError)
-
[解決済み] どのようにrailsでラジオボタンを正しく使用するには?
-
[解決済み] Railsでpng画像を文字列形式で表示するには?
-
[解決済み] Railsです。gemを使った特定バージョンのライブラリのアンインストール
-
[解決済み] Ruby: public static メソッドを作るには?
-
[解決済み] バリデーションなしで属性を更新する方法
-
[解決済み] Rails 4で、以前のバージョンのRailsでattr_accessibleを使用していた状況に遭遇した場合、Forbidden Attributes Errorが発生する。
-
[解決済み] 属性とカラムの違いは何ですか?