11

これは以前にも質問されたと思いますが、Google で検索しても解決策が見つかりません。

これがRails 2.3.5でやろうとしていることです:

layouts/application.html.erb:
<html>
  <head>
    ... some other stuff
    <%= yield :head %>
  </head>
  <body>
    <% content_for :head, "something that belongs in the head" %>
  </body>
</html>

content_forのの yield に注目してください。

デフォルトでは、Rails は yield が使用された後に :head の内容を定義することを許可しないことを知っています。これは理にかなっています。

テンプレートのレンダリング プロセスに接続しようとしましたが、これまでのところ成功していません。

したがって、私の目標は、パーシャル/テンプレート内で content_for を定義し、応答がブラウザーに送信される直前に「yield」を何らかの形で遅らせて実行できるようにすることです。

誰かが解決策を思いつきましたか?

ご挨拶と感謝、フランク

更新 weppos のアイデアに従って、ラック ミドルウェアを試してみます。ありがとう

4

2 に答える 2