これらは私のpruduct.rb、cart.eb、item.rb です。
class Product < ActiveRecord::Base
attr_accessible :category_id, :color, :description, :price, :size, :title, :product_type, :sub_category_id, :image_url
belongs_to :category
belongs_to :sub_category
has_many :items
end
Cart.rb
class Cart < ActiveRecord::Base
has_many :items, dependent: :destroy
end
アイテム.rb
class Item < ActiveRecord::Base
attr_accessible :cart_id, :product_id,:product
belongs_to :cart
belongs_to :product
end
アイテムコントローラー
class ItemController < ApplicationController
def create
@cart=current_cart
product=Product.find(params[:product_id])
@item=@cart.items.build(product: product)
redirect_to clothes_path
flash.now[:success]="Product successfully added to Cart"
end
end
カートの内容を次のよう に表示したいとき、私の見解では
<%= @cart.items.each do |item| %>
current_cartメソッド _
def current_cart
cart=Cart.find(session[:cart_id])
rescue ActiveRecord::RecordNotFound
cart=Cart.create
session[:cart_id]=cart.id
cart
end
それは私にこのエラーを与える
nil:NilClass の未定義のメソッド「items」
ここで何が問題なのですか?Rails を使用したアジャイル Web 開発
の例に従っています。