我有以下链接,它是在循环中生成的
<% if category.status %>
<%= link_to 'Disable', edit_category_path(category), method: :get, remote: true, confirm: 'Are you sure you want to disable' %>
<% else %>
<%= link_to 'Enable', edit_category_path(category), method: :get, remote: true, confirm: 'Are you sure you want to enable' %>
<% end %>
在我的编辑操作中,我有
unless params[:id].blank?
@category = @category.update_attribute(:status, false) # Here I mentioned false as static.
end
如果我单击启用它应该启用(在数据库中更新为true),如果我单击禁用它应该禁用(在数据库中更新为false)
我该怎么办?如何传递状态(更新为true或false)
答案 0 :(得分:0)
像这样使用
<%= link_to 'Disable', edit_category_path(category, {status: 0}), method: :get, remote: true, confirm: 'Are you sure you want to disable' %>
你可以打电话给
控制器中的 params[:status]
答案 1 :(得分:0)
如果'GET edit_category_path'是通常'生成一个POST到#update的表单',则GET不应该更新服务器状态。
也许POST(可能直接到#update),改变状态,然后获取编辑_...路径 或POST到更新状态并重定向到#edit的新操作?