1
我試圖創建兩個小按鈕具有向上和向下箭頭,根據我的產品類別。我有一個叫產品型號,並正在使用acts_as_list跟蹤的位置。創建自定義move_up路線和move_down動作/路由Rails的
難道我做這樣的事情在我的控制器來制定的路線?
resources :products
post "products/move_up"
post "products/move_down"
,並在我的產品控制器
def move_up
@product.find(params[:id])
@product.move_higher
end
def move_down
@product.find(params[:id])
@product.move_lower
end
在我看來
<%= link_to "UP", products_move_up_path(product) %>
<%= link_to "Down", products_move_down_path(product) %>
但我不會做正確的事情。我不斷收到錯誤
無法找到ID產品= move_up
誰能幫我創建這條路線的關係?
編輯: 現在我得到的錯誤
你有一個零對象時,你沒想到吧! 您可能預期了Array的一個實例。而評估nil.find
這裏發生 錯誤是更多的代碼
查看代碼
<ul>
<% item.children.each do |child| %>
<li id='category_<%=child.id %>'>
<span><%= child.name %></span>
<% child.products.position.each do |product| %>
<br /><%= link_to "UP", move_up_product_path(product), method: :put %> |
<%= link_to "Down", move_down_product_path(product), method: :put %> ----------<%= product.position %>
<%= product.name %>
<%= link_to 'Edit', edit_product_path(product) %>
<%= link_to 'Delete', product, :method => :delete, :confirm => "Are you sure you want to delete this product?" %> <br />
<% end %>
<%= render 'shared/children', :item => child unless child.leaf? %>
</li>
<% end %> <br />
</ul>
似乎代碼要在掛在這裏
def move_up
#Need to add a before filter to find product so I don't have to keep doing it.
@product.find(params[:product])
@product.move_higher
end
當它執行查找。謝謝!
謝謝,這正是我一直在尋找的。現在,我得到一個零對象錯誤,我貼的代碼,如果你能幫助我明白這一點,以及 – ruevaughn 2012-02-28 23:48:25
我想通了,@ product.find(PARAMS [:編號]),需要的是@product = Product.find( PARAMS [:ID]) – ruevaughn 2012-02-29 00:47:41