# Include extra partial in layouts

**URL:** <https://www.ruby-forum.com/t/include-extra-partial-in-layouts/95264>\
**Category:** Rails\
**Created:** [January 15, 2006, 8:26pm UTC](https://www.ruby-forum.com/t/include-extra-partial-in-layouts/95264 "2006-01-15T20:26:28Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![gerardjp](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/9fc348/32.png) [@gerardjp](https://www.ruby-forum.com/u/gerardjp)\
**Post date:** [January 15, 2006, 8:26pm UTC](https://www.ruby-forum.com/t/include-extra-partial-in-layouts/95264/1 "2006-01-15T20:26:28Z")

</div>

Hi all,

Does anybody know how to include a partial (next to @content\_for\_layout)  
in a  
layout file?

I’m looking for a something like @partial\_for\_include =\> ‘filename’ in  
my  
layout files. So a linked .rhtml file gets picked up from within a  
layout  
file. All my layout files (4 at the moment) have a

  
tag, so one change in the menu, means editing 4 files.

Any clue?

THANX!

Gerard.

–  
“Who cares if it doesn’t do anything? It was made with our new  
Triple-Iso-Bifurcated-Krypton-Gate-MOS process …”

My $Grtz =~ Gerard;  
~  
:wq!

---

<div class="post-metadata">

**Author:** ![gerardjp](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/9fc348/32.png) [@gerardjp](https://www.ruby-forum.com/u/gerardjp)\
**Post date:** [January 15, 2006, 9:08pm UTC](https://www.ruby-forum.com/t/include-extra-partial-in-layouts/95264/2 "2006-01-15T21:08:36Z")

</div>

On Jan 15, 2006, at 12:26 PM, Gerard P. wrote:

> Hi all,
> 
> Does anybody know how to include a partial (next to  
> @content\_for\_layout) in a  
> layout file?

You mean like this?

```
<body>

	<%= render :partial => "shared/header" %>

	<div id="Body">
		<%= @content_for_layout %>
	</div>

	<%= render :partial => "shared/navbar" %>

     <%= render :partial => "shared/footer" %>
</body>

```

Works fine for us.

---

<div class="post-metadata">

**Author:** ![gerardjp](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/9fc348/32.png) [@gerardjp](https://www.ruby-forum.com/u/gerardjp)\
**Post date:** [January 15, 2006, 9:41pm UTC](https://www.ruby-forum.com/t/include-extra-partial-in-layouts/95264/3 "2006-01-15T21:41:42Z")

</div>

Lori,

Brilliant! I already have navigation menu’s in several layouts, and I’m  
about  
to start on all those cross-browser hack’s, which is going to result in  
at  
least 15 headers in multiple files.

Thanks for making my life easy … 🙂

Regards,

Gerard.

On Sunday 15 January 2006 21:04, Lori O. tried to type something  
like:

> Works fine for us.
> 
> * * *
> 
> Rails mailing list  
> removed\_email\_address@domain.invalid  
> [http://lists.rubyonrails.org/mailman/listinfo/rails](http://lists.rubyonrails.org/mailman/listinfo/rails)

–  
“Who cares if it doesn’t do anything? It was made with our new  
Triple-Iso-Bifurcated-Krypton-Gate-MOS process …”

My $Grtz =~ Gerard;  
~  
:wq!

---

<div class="post-metadata">

**Author:** ![gerardjp](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/9fc348/32.png) [@gerardjp](https://www.ruby-forum.com/u/gerardjp)\
**Post date:** [January 15, 2006, 10:03pm UTC](https://www.ruby-forum.com/t/include-extra-partial-in-layouts/95264/4 "2006-01-15T22:03:32Z")

</div>

Does this file exist:

app/views/shared/\_navright.rhtml

??

If you use render :partial =\> ‘…’ Rails prepends a ‘\_’ because it is a  
partial: all partials have a \_ before their name, but render :partial =\>  
‘…’ expects the name without a \_.

so:

render :partial =\> ‘shared/abc’

Looks for:

views/shared/\_abc.rhtml

Jules

---

<div class="post-metadata">

**Author:** ![gerardjp](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/9fc348/32.png) [@gerardjp](https://www.ruby-forum.com/u/gerardjp)\
**Post date:** [January 15, 2006, 10:14pm UTC](https://www.ruby-forum.com/t/include-extra-partial-in-layouts/95264/5 "2006-01-15T22:14:48Z")

</div>

Jules,

marvelous. I’m so happy … 🙂

Thanx a lot!

Grtz Gerard.

On Sunday 15 January 2006 22:03, Jules tried to type something like:

> so:
> 
> render :partial =\> ‘shared/abc’
> 
> Looks for:
> 
> views/shared/\_abc.rhtml
> 
> Jules

–  
“Who cares if it doesn’t do anything? It was made with our new  
Triple-Iso-Bifurcated-Krypton-Gate-MOS process …”

My $Grtz =~ Gerard;  
~  
:wq!

---

<div class="post-metadata">

**Author:** ![gerardjp](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/9fc348/32.png) [@gerardjp](https://www.ruby-forum.com/u/gerardjp)\
**Post date:** [January 16, 2006, 3:00am UTC](https://www.ruby-forum.com/t/include-extra-partial-in-layouts/95264/6 "2006-01-16T03:00:45Z")

</div>

“shared” is under “views”

---

<div class="post-metadata">

**Author:** ![gerardjp](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/9fc348/32.png) [@gerardjp](https://www.ruby-forum.com/u/gerardjp)\
**Post date:** [January 16, 2006, 8:19am UTC](https://www.ruby-forum.com/t/include-extra-partial-in-layouts/95264/7 "2006-01-16T08:19:49Z")

</div>

Thanx, it’s working.

Got these lovely clean layouts all of a sudden … 😉

Regards,

Gerard.

On Monday 16 January 2006 02:59, Lori O. tried to type something  
like:

> > > \<%= render :partial =\> “shared/header” %\>
> > 
> > –  
> > “Who cares if it doesn’t do anything? It was made with our new  
> > Triple-Iso-Bifurcated-Krypton-Gate-MOS process …”
> > 
> > My $Grtz =~ Gerard;  
> > ~
> > 
> > :wq!

–  
“Who cares if it doesn’t do anything? It was made with our new  
Triple-Iso-Bifurcated-Krypton-Gate-MOS process …”

My $Grtz =~ Gerard;  
~  
:wq!

---

<div class="post-metadata">

**Author:** ![gerardjp](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/9fc348/32.png) [@gerardjp](https://www.ruby-forum.com/u/gerardjp)\
**Post date:** [January 15, 2006, 9:59pm UTC](https://www.ruby-forum.com/t/include-extra-partial-in-layouts/95264/8 "2006-01-15T21:59:46Z")

</div>

Lori,

Any clue on what the directory is above ‘shared’ (the layout ‘root’ so  
to  
speak).

I created some files and moved the content, and on this line:

> \<%= render :partial =\> “shared/header” %\>

it now says:

ActionView::ActionViewError in Crm/customer#list\_contacts

No rhtml, rxml, or delegate template found for shared/\_navright

Thanx again.

Gerard.

–  
“Who cares if it doesn’t do anything? It was made with our new  
Triple-Iso-Bifurcated-Krypton-Gate-MOS process …”

My $Grtz =~ Gerard;  
~  
:wq!
