# How to access local parameters in partials?

**URL:** <https://www.ruby-forum.com/t/how-to-access-local-parameters-in-partials/184805>\
**Category:** Rails\
**Created:** [March 8, 2010, 11:07pm UTC](https://www.ruby-forum.com/t/how-to-access-local-parameters-in-partials/184805 "2010-03-08T23:07:04Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![trapper](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/2acd7d/32.png) [@trapper](https://www.ruby-forum.com/u/trapper)\
**Post date:** [March 8, 2010, 11:07pm UTC](https://www.ruby-forum.com/t/how-to-access-local-parameters-in-partials/184805/1 "2010-03-08T23:07:04Z")

</div>

In my template, I call this partial with an additional parameter:

\<%= render :partial =\> "shared/finder\_list\_header.html.erb", :locals =\> { :selectFinder =\> true } %\> ...

Inside the partial I try to access selectFinder:

\<% if selectFinder %\>

  
\<% end %\>

and get an error message:

undefined local variable or method `selectFinder’ for  
#ActionView::Base:0xb6ef1f58

What is going wrong?

---

<div class="post-metadata">

**Author:** ![trapper](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/2acd7d/32.png) [@trapper](https://www.ruby-forum.com/u/trapper)\
**Post date:** [March 8, 2010, 11:36pm UTC](https://www.ruby-forum.com/t/how-to-access-local-parameters-in-partials/184805/2 "2010-03-08T23:36:35Z")

</div>

Fritz T. wrote:

> In my template, I call this partial with an additional parameter:
> 
> \<%= render :partial =\> "shared/finder\_list\_header.html.erb", :locals =\> { :selectFinder =\> true } %\> ...
> 
> Inside the partial I try to access selectFinder:
> 
> \<% if selectFinder %\>
> 
>   
> \<% end %\>
> 
> and get an error message:
> 
> undefined local variable or method `selectFinder’ for  
> #ActionView::Base:0xb6ef1f58
> 
> What is going wrong?

Hum. It looks like you’re basically do it right. I do this quite a bit  
in my partials. The only thing I see is that you’re not following Ruby  
conventions. Ruby does not use camel case for variable/symbols. It  
should be :select\_finder and select\_finder instead of using camel case.

I also don’t normally use them for passing in constant values as in {  
:select\_finder =\> true }. So I threw together a quick test program and  
everything seems to be working as expected.

\<%= render :partial =\> ‘parts’, :locals =\> { :select\_finder =\> true }

In the partial…

\<% if select\_finder %\>  
…  
…  
\<% end %\>

---

<div class="post-metadata">

**Author:** ![trapper](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/2acd7d/32.png) [@trapper](https://www.ruby-forum.com/u/trapper)\
**Post date:** [March 8, 2010, 11:49pm UTC](https://www.ruby-forum.com/t/how-to-access-local-parameters-in-partials/184805/3 "2010-03-08T23:49:02Z")

</div>

Thanks for your reply.  
Changeing selectFinder to select\_finder doesn’t help.

---

<div class="post-metadata">

**Author:** ![trapper](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/2acd7d/32.png) [@trapper](https://www.ruby-forum.com/u/trapper)\
**Post date:** [March 9, 2010, 12:00am UTC](https://www.ruby-forum.com/t/how-to-access-local-parameters-in-partials/184805/4 "2010-03-09T00:00:56Z")

</div>

It was my fault, sorry.
