代码之家  ›  专栏  ›  技术社区  ›  Joelio

Rails链接到更新1字段

  •  2
  • Joelio  · 技术社区  · 14 年前

    我想更改删除,不是删除,而是更新记录中名为“已删除”的字段。

    “你确定吗?”,:method=>:删除%gt;

    看起来这应该是可行的,但它没有:

    对,:confirm=>'确定吗?',:method=>:post%>
    1 回复  |  直到 14 年前
        1
  •  2
  •   brad    14 年前

    没有自动的方法可以通过视图助手(如链接到)来完成这项工作。你的控制器中的动作需要为你做这些。

    如果你 从未 要通过销毁操作删除文档,只需重写该操作,将其“已删除”属性设置为true,而不是实际销毁它。这样您就可以继续使用原始链接。所以:

    class Document < ActiveRecord::Base
    
      # DELETE /documents/:id
      def destroy
        @document = Document.find(params[:id])
        @document.deleted = true
        @document.save
        redirect_to documents_path
      end
    end
    

    具有

    <%= link_to 'Destroy', document, :confirm => 'Are you sure?', :method => :delete %>