[解決済み] Ruby/Rails の「フック」とは何ですか?
2022-01-26 01:30:19
質問
コードを編集しているところ、以下のような表示が出ました。
<% hook :login do %>
<% form_tag user_session_path do %>
<p>
<%= label :user_session, :login, 'Email Address' %><br />
<%= text_field :user_session, 'login' %>
</p>
<p>
<%= label :user_session, :password, 'Password' %><br />
<%= password_field :user_session, 'password' %>
</p>
<p>
<label>
<%= check_box :user_session, :remember_me %>
<%= label :user_session, :remember_me, 'Remember me' %>
</label>
</p>
<p><%= submit_tag 'Log In' %></p>
<% end %>
or <%= link_to 'Create a new account', signup_path %> | <%= link_to 'Forgot Password', new_password_reset_path %>
<% end %>
何をするのか
<% hook :login do %>
...
<% end %>
を行うか?
5分ほどググってみましたが、この件に関しては何も出てきませんでした。
解決方法は?
純粋なRubyの感覚では、このメソッドが行っているのは フック 引数を1つ、ブロックを1つ与えます。
そして、Spreeのスールコードに目を通した結果、うん、ここにそのメソッドがある。 http://github.com/railsdog/spree/blob/master/core/app/helpers/hook_helper.rb
さらに詳しく見てみないと、これが何に使われているのかがわからない。組み込みのテンプレートにHTMLの一部を追加するためだと想像します(この場合、ログインフォームがどのように見えるかを再定義します)。
関連
-
[解決済み】Rails。Ruby on Railsの移行でデータベースカラムの名前を変更するにはどうすればよいですか?
-
[解決済み】Ruby: 特定のバージョンのruby gemをインストールする方法は?
-
[解決済み] Rubyのswitch文の書き方
-
[解決済み] Rubyで配列に値が存在するかどうかを確認する方法
-
[解決済み] Rubyからシェルコマンドを呼び出す方法
-
[解決済み] Rubyでnilとemptyとblankを理解する方法
-
[解決済み] Rubyのattr_accessorとは何ですか?
-
[解決済み] Ruby on Railsで現在の絶対URLを取得するにはどうすればよいですか?
-
[解決済み] Ruby on RailsでJSON出力を "きれい "にフォーマットする方法
-
[解決済み】Railsの認証トークンを理解する
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】コントローラでJSONをレンダリングする
-
[解決済み] Ruby on Railsのランナー
-
[解決済み] Mac OS Xにhomebrewがインストールされているかどうかを確認する方法
-
[解決済み] Rails のインストールに失敗する: activesupport には Ruby のバージョン >= 2.2.2 が必要です。
-
[解決済み] Rubyで変数をインクリメントする [重複]。
-
[解決済み] rails erb フォームヘルパー options_for_select :selected
-
[解決済み] Herokuの問題 : あなたが探しているページは存在しません。
-
[解決済み] Ruby:Rubyの配列にinclude.の反対はある?
-
[解決済み] Rspec が私のモデルクラスを認識しない。初期化されていない定数エラー
-
[解決済み] Heroku: 既存のrailsアプリにseeds.rbをプッシュする方法?