gpt4 book ai didi

javascript - 为什么删除链接在此 Ruby on Rails 项目中不起作用?

转载 作者:行者123 更新时间:2023-12-03 13:17:42 25 4
gpt4 key购买 nike

我正在练习 Michael Hartl 的这个 RoR 教程项目:http://ruby.railstutorial.org/ruby-on-rails-tutorial-book

我在带有 Apache 和 MySQL 的 Ubuntu 11.04 上使用 Ruby 1.9.2 和 Rails 3.1。

我现在在这里:http://ruby.railstutorial.org/chapters/updating-showing-and-deleting-users#sec:destroying_users (我有一个用户列表和每个用户的删除链接,我是管理员)。

这是应该有效的删除链接:

<%= link_to "delete", user, :method => :delete, :confirm => "You sure?",
:title => "Delete #{user.name}" %>

但是当我将鼠标悬停时,我看到了这个:“localhost/users/2”(例如)当我单击“删除”链接时,它会将我定向到用户的个人资料。我没有收到任何确认窗口,也没有执行任何操作(删除)。这就像指向他们个人资料的链接,仅此而已。我使用的是 Chrome,但在 Firefox 中是一样的。

这是我的:

1)安装了gem“jquery-rails”

2)applications.js(来自 app/assets/javascripts)有这些行:

//= require jquery
//= require jquery_ujs
//= require_tree .

3)application.html.erb(来自 app/views/layouts)有这些行:

<%= javascript_include_tag :defaults %>
<%= csrf_meta_tags %>

在查看源代码中我看到:

  <script src="/assets/defaults.js" type="text/javascript"></script>
<meta content="authenticity_token" name="csrf-param" />
<meta content="njPO91rB7p3EtTblD4jf4rkCVt+M76SKUt0rQhHc+qY=" name="csrf-token" />

4)在 users_controllers.rb(来自 app/controllers)中我有:

 before_filter :authenticate, :only => [:index, :edit, :update, :destroy]
before_filter :correct_user, :only => [:edit, :update]
before_filter :admin_user, :only => :destroy

def destroy
User.find(params[:id]).destroy
flash[:success] = "User destroyed."
redirect_to users_path
end

private
def admin_user
redirect_to(root_path) unless current_user.admin?
end

5)在 routes.rb(来自配置)中我有:

resources :users

删除链接有什么问题?我在 StackOverflow 上搜索了答案,但显然找不到适合我情况的答案。

在同一个 RoR 项目中,使用 Ajax 的关注/取消关注按钮工作得很好(现在不能在这里发布第二个链接,因为我刚刚注册到 SO)。

那么,为什么链接不起作用?是 Javascript 问题还是我没有发现的其他问题?

谢谢。

最佳答案

尝试使用

  <%= javascript_include_tag "application" %>

代替:默认值

关于javascript - 为什么删除链接在此 Ruby on Rails 项目中不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7786960/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com