destroy:删除资源

0
视频
0
完成
0%
进度
0
分钟
0
完成
0%
进度

删除资源要使用 HTTP 的 DELETE 方法去请求,资源名加资源 ID 这种地址模式 .. 这样就会删除掉指定 ID 的资源了 .. 这里我们可以使用一个特别的链接 ..

在这个文章列表页面上添加一个删除资源用的链接 .. 打开 index.html.erb .. 使用 link_to .. 链接的文本是 Delete .. 链接的地址用一下 article_path 生成 .. 把当前迭代的资源对象交给这个方法 .. 我这里就是字母 a ...

然后我们再给 link_to 添加一个 method: 选项 .. 它可以给我们动态的生成一个表单 ... 使用我们指定的 HTTP 方法自动向链接的地址发出请求 .. 删除资源,用的 HTTP 方法是 :delete ..

再添加一个 :data 选项 .. 它可以让我们在链接上添加自定义的 html data 属性 .. 添加一个 confirm .. 属性的值是 are you sure?

保存 ... 到浏览器上去试一下 ... 点击资源下面的 Delete 按钮 ... 会弹出一个对话框 .. 问我们确定要这样做吗?

确定 ... Rails 会动态生成一个表单并且提交这个表单,发出删除资源的请求 ... 这种请求用的是控制器里的 destroy 方法来处理 ...

在资源的控制器里面,添加一个 destroy 方法 .. 添加一个实例变量 .. @article .. 用模型的 find 方法,找到要删除的资源 ..

再使用模型的 destroy 方法 .. 它可以删除掉这个资源模型 ...

完成以后,再用一个 redirect_to ,把用户重定向到 articles_path .. 这个助手方法可以生成到资源列表的地址 ...

回到浏览器 ... 删除一个资源 ... 确定 ... 删除以后,会返回到这个资源的列表 ...

我们可以再把这个删除资源用的链接放到资源的详情页面上 ... 复制一下这个链接的代码 ... 然后打开 show.html.erb

粘贴过来 .. 修改一下 article_path 的参数 .. 这里应该使用 @article 来表示 ...

打开一个资源的页面 ... 点一下 Delete 这个链接 ... 确定 ... 同样会删除掉资源 ...

destroy:删除资源《 Ruby on Rails:起步 》

统计

14696
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点