Uninitialized constant (controller/model)

676 views
Skip to first unread message

Justin To

unread,
Jul 10, 2008, 5:51:10 PM7/10/08
to rubyonra...@googlegroups.com
NameError in StoreController#add_to_cart

uninitialized constant StoreController::Cart

This is the controller:

class StoreController < ApplicationController
def index
@products = Product.find_products_for_sale
end

def add_to_cart
@cart = find_cart
product = Product.find(params[:id])
@cart.add_product(product)
end

private

def find_cart
session[:cart] ||= Cart.new
end

end

Amd this is the model

class Cart
attr_reader :items

def initialize
@items = []
end

def add_product(product)
@items << product
end
end

Thanks for the help
--
Posted via http://www.ruby-forum.com/.

Michael Breen

unread,
Jul 10, 2008, 6:07:39 PM7/10/08
to rubyonra...@googlegroups.com

On Jul 10, 2008, at 5:51 PM, Justin To wrote:

>
> NameError in StoreController#add_to_cart
>
> uninitialized constant StoreController::Cart
>
> This is the controller:
>
> class StoreController < ApplicationController
> def index
> @products = Product.find_products_for_sale
> end
>
> def add_to_cart
> @cart = find_cart
> product = Product.find(params[:id])
> @cart.add_product(product)
> end
>
> private
>
> def find_cart
> session[:cart] ||= Cart.new
> end
>
> end
>
> Amd this is the model
>
> class Cart

class Cart < ActiveRecord::Base

Did you just miss < ActiveRecord::Base when writing the email?

Best.
Mike

Justin To

unread,
Jul 10, 2008, 6:21:52 PM7/10/08
to rubyonra...@googlegroups.com
=P...


Although, I am getting this error now:

undefined method `add_product' for []:Array

Justin To

unread,
Jul 10, 2008, 9:18:02 PM7/10/08
to rubyonra...@googlegroups.com
No help? =(

shenry

unread,
Jul 11, 2008, 1:40:56 PM7/11/08
to Ruby on Rails: Talk
Can you add items to the cart in the console?

This is wild speculation, I've never made an app with a cart, but
seems like you might need a has_many :items, :class_name => 'products'
in the Cart model?

On Jul 10, 6:18 pm, Justin To <rails-mailing-l...@andreas-s.net>
wrote:

CKomiya

unread,
Oct 29, 2009, 10:04:44 PM10/29/09
to rubyonra...@googlegroups.com

maybe your file name is Cart.rb instead of cart.rb
--
View this message in context: http://www.nabble.com/Uninitialized-constant-%28controller-model%29-tp18392649p26123953.html
Sent from the RubyOnRails Users mailing list archive at Nabble.com.

Reply all
Reply to author
Forward
0 new messages