Rails 删除方法跳转到 show

sforce100 · 2012年10月21日 · 最后由 small_fish__ 回复于 2012年10月22日 · 2248 次阅读

<%= link_to 'Destroy', teacher, method: :delete, data: { confirm: 'Are you sure?' } %>

为什么 delete 不了。。确跳转到了 show.html.erb 呢 我的 routes 是这样配的 resources:teacher

@sforce100 当你 delete 这条记录时,这条记录在数据库里面已经找不到了,所以无法转到 show 页面。只能转到 teachers/ 下面。 还有,redirect_to 重定向不是在这里控制的,应该在 app/controller/teache_controller 文件下面的 destroy 方法里面去修改。个人见解

你的浏览器是不是禁用了 JavaScript?

写错了 是 jquery_ujs

#4 楼 @sforce100 加载 jquery_ujs 没?

#5 楼 @fresh_fish 没有。。应该怎么加载。。application.js 里面??但是我没找到这个 require jquery_ujs.JS

那就在 application.js 加上这一行

//= require jquery_ujs

#4 楼 @sforce100 那就检查一下 log,看看这个请求发给服务器的是什么动词,DELETE 还是 GET,如果确实是 DELETE,那就检查一下 destroy 方法中是不是有错误。

#7 楼 @fresh_fish OK!!就这样~谢谢

#8 楼 @chechaoyang 查看过页面的元素,是 delete 的,7 楼正解

如果不需要 confirm,可以改用 button_to

遇到过这个问题,结果我把这个方法的名字换了就就可以了…

需要 登录 后方可回复, 如果你还没有账号请 注册新账号