For some reason I can not render a partial inside a content_for block.
Here's the code:
/ => index.html.slim
doctype html
html lang="de"
= render "layouts/headinclude"
body
= yield
- if Rails.env.production?
- content_for :additional_headincludes do
= render "layouts/hotjar"
For some reason the following does not include my partial once fully rendered:
/ # => _headinclude.html.slim
head
title= @title || "My Title"
link href='//fonts.googleapis.com/css?family=Droid+Sans:400,700' rel='stylesheet' type='text/css'
- if content_for?(:additional_headincludes)
= yield :additional_headincludes
I do not see a reason why this would not work. Any help is appreciated.
When rendering the partial directly inside my headinclude-partial, it's working all fine.
The problem here was with the order. I had to define the
content_for-block prior to callingrender "layouts/headinclude".Note that this concept would've worked if the "answering"
content_for-block (the one containing therender "layouts/hotjar"-part) was inside a template (Likeshoworindexor in whatever template you currently are). Reason for that is the order the content gets resolved by Rails.A template seems to get resolved before the layout, so in this case the "asking"
content_for-block would've had actual data to display.Here's (one possible) an answer:
I hope this helps somebody.