NoMethodError in PublicController

I’m following a tutorial with a public controller, line_item model,
and cart model. When I try to add an item to the cart I am getting an

NoMethodError in PublicController#add_to_cart

You have a nil object when you didn’t expect it!
You might have expected an instance of Array.
The error occurred while evaluating nil.<<

Here is my code


On Apr 4, 7:43 am, “[email protected][email protected] wrote:

On the face of it this doesn’t make sense - the only thing you call <<
on is @items and that is initialized to [] in the Cart’s initialize
method. My guess would be that this was missing in your first attempt
and although you have now fixed this, the session still contains a bad
object with nil @items. Restarting the browser would fix it if this
was the problem (as well as outlining one of the pitfalls with storing
complex objects in the session).


Thanks for the reply. Restarting the browser did help, however
another one arose which is the sessions. I’m following the lynda ruby
on rails essentials which is an older version of rails. No where in
the tutorial did they go into detail about sessions, so I assume it’s
more complicated with my newer version. Any suggestions as to what I
should do next? Scrap the lynda tutorial and do another? I also
haven’t upgrade to the newest rails version.


On Apr 4, 3:42 am, Frederick C. [email protected]

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs