:Partial and :locals question

Hello,

I want to be able to call a partial with and without a local.
E.g.:
1 - <%= render :partial => “/contacts/phones/create”, :locals => {
:parent_form => contact_form, :phone => Phone.new} %>

2 - <%= render :partial => “/contacts/phones/create”, :locals => {
:parent_form => contact_form, :phone => Phone.new, :child_index => “111”
} %>

In my partial I have:

<% if child_index -%>
Do something
<% else -%>
Do something else
<% end -%>

The problem is that, when I don’t pass the local child_index, the
partial don’t render and give me a error. What is the problem?

Thanks,
David S.

Hello…
the solution:
http://hackd.thrivesmarthq.com/how-to-make-a-rails-partial-with-optional-locals-parameters

I’m still looking for a dryer way.

Regards,

David S.

David S. wrote:

Hello,

I want to be able to call a partial with and without a local.
E.g.:
1 - <%= render :partial => “/contacts/phones/create”, :locals => {
:parent_form => contact_form, :phone => Phone.new} %>

2 - <%= render :partial => “/contacts/phones/create”, :locals => {
:parent_form => contact_form, :phone => Phone.new, :child_index => “111”
} %>

In my partial I have:

<% if child_index -%>
Do something
<% else -%>
Do something else
<% end -%>

The problem is that, when I don’t pass the local child_index, the
partial don’t render and give me a error. What is the problem?

Thanks,
David S.

what about using

<% unless child_index.blank? -%>
Do something
<% else -%>
Do something else
<% end -%>

Thank you

Rodrigo D.

David S. wrote:

Hello,

I want to be able to call a partial with and without a local.
E.g.:
1 - <%= render :partial => “/contacts/phones/create”, :locals => {
:parent_form => contact_form, :phone => Phone.new} %>

2 - <%= render :partial => “/contacts/phones/create”, :locals => {
:parent_form => contact_form, :phone => Phone.new, :child_index => “111”
} %>

In my partial I have:

<% if child_index -%>
Do something
<% else -%>
Do something else
<% end -%>

The problem is that, when I don’t pass the local child_index, the
partial don’t render and give me a error. What is the problem?

Thanks,
David S.

what about using blank?

On 17 jul, 00:06, David S. [email protected]

what about using blank?

On 17 jul, 00:06, David S. [email protected]

Thanks for the replays…

unless child_index.blank? Did not work.

But: if defined?(child_index) && child_index, worked ok.

thks again.

David S.

Sorry just replied to you directly and not to the group…

Use the defined? method like…

<% if defined?(child_index) && child_index %>

-Evan Worley

On Jul 16, 9:46 pm, Rodrigo D. <rails-mailing-l…@andreas-