# Complete stumper: variable exists in hidden\_field\_tag, but n

**URL:** <https://www.ruby-forum.com/t/complete-stumper-variable-exists-in-hidden-field-tag-but-n/108072>\
**Category:** Rails\
**Created:** [June 28, 2007, 9:02pm UTC](https://www.ruby-forum.com/t/complete-stumper-variable-exists-in-hidden-field-tag-but-n/108072 "2007-06-28T21:02:28Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![jfoxny](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/a6a055/32.png) [@jfoxny](https://www.ruby-forum.com/u/jfoxny)\
**Post date:** [June 28, 2007, 9:02pm UTC](https://www.ruby-forum.com/t/complete-stumper-variable-exists-in-hidden-field-tag-but-n/108072/1 "2007-06-28T21:02:28Z")

</div>

This is a real mystery to me. I have an instance variable in a partial  
that only gives its value inside a hidden\_field\_tag. If I try to use  
the variable anywhere else in the partial, i either get nil or an  
undefined error. The goal is to use the value of @event.id outside of  
hidden\_field\_tag.

Here’s what works:  
\<%= hidden\_field\_tag ‘id’, @event && @event.id, :id =\> ‘event\_id’ %\>

…spits out this HTML:

So I read that to mean that @event.id is 771. Fine, good. However, if  
I change the line to this:  
\<%= hidden\_field\_tag ‘id’, @event.id, :id =\> ‘event\_id’ %\>

…I get an error:

RuntimeError in Controller#index

Showing app/views/controller/\_contacts.rhtml where line #81 raised:

Called id for nil, which would mistakenly be 4 – if you really wanted  
the id of nil, use object\_id

Furthermore, if I say this elsewhere in the same partial:  
the event id is: \<%= @event && @event.id %\>END

…I get this:

the event is: END

And finally if I do this:

```
    <%= hidden_field_tag 'id', @event && @event.id, :id =>

```

‘event\_id’ %\>  
\<%= hidden\_field\_tag ‘id’, @event && @event.id, :id =\>  
‘event\_id’ %\>  
\<%= hidden\_field\_tag ‘id’, @event && @event.id, :id =\>  
‘event\_id’ %\>  
\<%= hidden\_field\_tag ‘id’, @event && @event.id, :id =\>  
‘event\_id’ %\>  
\<%= hidden\_field\_tag ‘id’, @event && @event.id, :id =\>  
‘event\_id’ %\>

…only the FIRST one works:

Anyone got a handle on this? I’ve never seen a problem like this  
before and it’s driving me completely nuts. I’d really be grateful for  
any tips or fixes.

Thanks!  
-Jason

---

<div class="post-metadata">

**Author:** ![jfoxny](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/a6a055/32.png) [@jfoxny](https://www.ruby-forum.com/u/jfoxny)\
**Post date:** [June 28, 2007, 10:11pm UTC](https://www.ruby-forum.com/t/complete-stumper-variable-exists-in-hidden-field-tag-but-n/108072/2 "2007-06-28T22:11:45Z")

</div>

Hi Jason,

Jason F. wrote:

> value=“771”/\>
> 
> So I read that to mean that @event.id is 771. Fine, good.

I don’t think it’s doing what you think it’s doing. This may help:  
[http://www.railsforum.com/viewtopic.php?pid=28781](http://www.railsforum.com/viewtopic.php?pid=28781)

Best regards,  
Bill
