[英]rails 4, link_to not working with destroy action when jquery, jquery_ujs is required
为什么在application.js文件中需要jquery后,destroy动作是不兼容的? 如何在不忽视jquery的情况下让destroy操作再次工作?
发布索引视图:
h1 Blog
- @posts.each do |post|
h2 = link_to post.title, post
p = post.content
p = link_to 'Edit', edit_post_path(post)
p = link_to 'Delete', post, data: {confirm: "Are you sure?"}, method: :delete
br
p = link_to 'Add a new post', new_post_path
在帖子控制器中销毁动作:
def destroy
@post = Post.find params[:id]
@post.destroy
redirect_to posts_path, :notice => "Your post has been deleted"
end
application.js中:
= require jquery
= require jquery_ujs
//= require turbolinks
//= require_tree
一旦我评论这两个,毁灭行动再次起作用。 如果没有评论,删除链接只会触发节目动作......你的想法?
因此,资产管道对这些评论做了一些特别的事情。 表格的评论的存在
//= require jquery
指示预处理器在构建应用程序客户端的application.js时包含该文件。 删除注释时,您将删除此行为 - 并且生成的库不会编译到应用程序提供的最终application.js中。
这样做的结果是你误解了所需指令的工作原理。 它只适用于评论。 删除注释标记后,您将停止包含库。
application.js
是一个清单文件,因此假设语法具有这些注释。 请参阅http://guides.rubyonrails.org/asset_pipeline.html#manifest-files-and-directives
如果您复制并粘贴了网站http://guides.rubyonrails.org/getting_started.html中的代码,请尝试输入代码。
或者删除所有可能不是空格的前导'空格'。 不知怎的,我得到了ascii 160而不是ascii 32(空白字符)。
我确定它是如何发生的,但复制并粘贴它现在工作正常。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.