I got the id of a "part" in variable "the_id". In a partial
"_order_fields.html.erb"
So I do this...
@a = Part.find(the_id)
I get this error...
Couldn't find Part without an ID
So I also try...
@a = Part.find(the_id.to_i)
Get same error.
If I do @a = Part.find(2), it works. But I need to do the "find" using a
variable, instead of hard-coding the value.
(I know I shouldn't be doing this in a view and I know the code is ugly
by Ruby programming standards but I'm testing to see if it works, then
I'll rename it)
I got the id of a "part" in variable "the_id". In a partial
"_order_fields.html.erb"
So I do this...
@a = Part.find(the_id)
I get this error...
Couldn't find Part without an ID
Uhh, are you sure the_id has a numeric value at that point in the view? You
don't say where or how it is set. Local controller variables are not shared
with views, though controller instance variables are. And anything can be
passed to a partial, though not regular view through the :locals hash.
So, I do find the "part", using a = Part.find_by_id(the_id)
If I do <%= debug a %> I get...
----------------------
attributes:
name: Western Digital - Caviar GP 500GB Internal Hard Drive
created_at: 2011-08-23 18:54:12.214873
cost: 49.99
updated_at: 2011-08-23 18:54:12.214873
id: 2
[...]
-------------------
but if I do
a.cost
I get error...
undefined method `cost' for nil:NilClass
How is it going to be a nil class? If I do a.class I get "Part", then
it's NOT a nil class.
It's weird, if I do exactly the same thing in the console a.cost does
work.