私のアイテムに「カートに追加」メソッドを追加しようとしています。[GET]と一致するルートはありません
items_controller:
def to_cart
@item = Item.friendly.find(params[:id])
@item.add_to_cart
redirect_to root_path
end
経路:
resources :items do
put :to_cart, on: :member
end
モデル:
def add_to_cart
current_user.cart.items << self
current_user.cart.save
end
ショー:
<%= @item.name %>
<%= link_to 'add to cart', to_cart_item_path(@item) %>
RoutingError:No route matches [GET] "/items/first/to_cart"
フレンドリーなidのために「最初に」。 私は間違っていましたか?
はあなたのroutes.rbをを追加することができます。
RailsのUJSドライバ(控えめなJavaScriptのドライバ)も、link要素が
data-method
属性を持っている場合、クライアントでフォームを作成する方法を提供し? resources:items行に 'member::to_cart'を追加する必要があります。 –