如何使用button_to切换布尔方式

时间:2015-02-06 00:52:25

标签: ruby-on-rails boolean button-to

我有2个按钮坐在if else方法中,第一个按钮假设允许用户将布尔值从false更改为true。然后,如果模型显示它是真的,它将显示另一个按钮,这是一个删除按钮。我不能让切换按钮(顶部一个)正常工作删除就好了。现在就是它的立场。

  def which_button(reportapproval)
    if reportapproval.user_approved == false
      button_to "Approve this Manager?", { controller: "users/reportapprovals", id: @reportapproval.id, action: "#not sure what goes here" }, method: :#not sure what goes here, data: {confirm: "Are you sure you want to give this manager access to your report?" }
    else
      button_to "Remove this Manager", { controller: "users/reportapprovals", id: @reportapproval.id, action: "destroy" }, method: :delete, data: {confirm: "Are you sure you want to remove this manager's access to your report?" }
   end
  end

但我一直收到错误邮政路线没找到,我知道这是不对的。我想在reportapproval模型中切换一个布尔值。请告诉我我需要做什么。

1 个答案:

答案 0 :(得分:1)

为此,您需要在users/reportapprovals控制器中执行新操作,当用户单击第一个按钮时,该操作会将reportapproval.user_approved设置为true。在action属性的第一个按钮中添加创建的新操作。还要注意在路线中提及相同的动作。为避免提及控制器和操作,您还可以指定创建的新路径的路径。所以这就是你需要做的。这也可以使用AJAX或通常通过页面重新加载来完成。