0
我試圖設置一個簡單的購物車。我希望能夠點擊的記錄「添加」,然後有添加到購物車該項目與記錄/線路Rails - 似乎無法將參數傳遞給方法
<% @documents.each do |document| %>
<td><%= link_to "add", add_to_cart_path(8), :method => :post %></td>
<% end %>
我把add_to_cart_path(8)
作爲排除故障的ID。我真的希望這是add_to_cart(document.id)
然而,無論哪種方式,當前doc ID參數沒有傳遞到創建新的項目記錄。
我的路線是
post '/add_to_cart/:doc_id' => 'carts#add_to_cart', :as => 'add_to_cart'
的車控制器已
def add_to_cart
$current_doc_id = doc_id
current_cart.add_item(:doc_id)
redirect_to carts_path(current_cart.id)
end
我的車模型
def add_item(document_id)
@line_item = Item.create(:document_id => document_id, :cart_id => $cart_number)
if @line_item.save
# flash[:success] = "item added!"
else
# flash[:fail] = "!"
end
end
當我看項目表,正在創建的記錄,購物車ID已正確填充。但是,document_id字段爲'null'。
您正在傳遞':doc_id'而不是實際的文檔ID。你應該通過'params'方法使用你的參數,例如'params [:doc_id]'。 –
工作。該鏈接已成功傳遞當前文檔ID。 –
您可以使用'better_errors' gem進行調試。 –