私はこのチュートリアルhttp://guides.rubyonrails.org/layouts_and_rendering.htmlに従っており、残りのHTMLテンプレートからヘッダーdivを分離しようとしています。UIレイヤーでRuby on Railsの利便性が低下する
私はその後、私は/アプリでhead.html.erbというファイルを作った私のアプリ/ビュー/ホーム/ index.html.erbファイルからdiv要素を取り出し、
<%= yield :head %>
に置き換えています/ views/layoutsディレクトリに配置し、そこにdivを配置します。次に、このコードをdivに貼り付けます:
<% content_for :head do %>
<% end %>
しかし、それは動作せず、ヘッダーdivは表示されません。どこで私は間違えましたか?私はパスとディレクトリの不一致があると思いますが、私はそれらをどのようにマッチさせるか正確にはわかりません。
ありがとうございました!
私はindex.html.erbに "%% yield:head%>"を入れましたが、divをレンダリングしていません。 head.html.erbを探すことだけを知っていますか? – GeekedOut
いいえ、 'yield'は' app/views/layouts/application.html.erb'ファイルになければなりません。他のすべてのビューはデフォルトで使用されます。そしてあなたのテンプレート( 'index.html.erb'ファイルのようなもの)に' content_for'ブロックを置きます。 –
おそらく、私はapplication.html.rbファイルの目的を誤解していました。テンプレートでインポートできるdivやcss/jsファイルを追跡するだけですか?テンプレートにはコードがありますか? – GeekedOut