【问题标题】:delete method in RailsRails 中的删除方法
【发布时间】:2013-03-21 08:15:07
【问题描述】:

删除和销毁有什么区别?

如果我们生成一个脚手架,删除日期条目的默认方法是method: :delete,而delete实际上并没有在控制器中定义。那么 Rails 是如何真正确定要做什么的呢?

【问题讨论】:

    标签: ruby-on-rails


    【解决方案1】:

    据我所知:

    Delete 方法使用 SQL DELETE 语句而不实例化对象或运行任何回调。

    Destroy 对数据库进行 SQL 调用并删除包含当前对象的表中的行,您仍然可以管理该对象,只要它有作用域。

    希望这会有所帮助。

    【讨论】:

    • OneZero 显然是指提到 method: :delete 的 http 请求 - 而不是 SQL 语句。
    【解决方案2】:

    DELETEHTTP 动词,而 destroy 是控制器中的一个动作。如果您在应用程序中使用资源,HTTP DELETE 请求将被路由到控制器中的 destroy 操作(除非您更改默认行为)。

    link_to 选项中的method: :delete 表示单击链接将触发HTTP DELETE 请求。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-18
      • 1970-01-01
      • 2017-03-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多