製品のインデックス ビューには、javascript 関数 addToCart を呼び出す「カートに追加」があります。
addToCart: function() {
$.ajax({type: 'GET',
url: 'store/add_to_cart/2', // fixed id of product
timeout: 5000,
success: function() { alert('Added !'); },
error: function() { alert('Error !'); }
});
}
def add_to_cart // not working
begin
prod = Product.find(params[:id])
@cart = find_cart
@cart.add_product(prod)
render :partial => 'cart', :object => @cart if request.xhr?
end
end
この add_to_cart を使用すると、パーシャルがレンダリングされますが、このメソッドのデフォルト ビューもレンダリングされます - add_to_cart.html.haml - しかし、次のようにすると、パーシャルのみがレンダリングされます。なぜ違うのか誰か説明してもらえますか?
def add_to_cart // working fine
begin
prod = Product.find(params[:id])
@cart = find_cart
@cart.add_product(prod)
if request.xhr?
render :partial => 'cart', :object => @cart
else
redirect_to_index
end
end
end
ご協力いただきありがとうございます !!