[英]Ruby on Rails: Why doesn't my delete link work?
我正在遵循Rails指南: http : //guides.rubyonrails.org/getting_started.html
并且我的index.html.erb中包含以下行:
<%= link_to 'Destroy', team_path(team), method: :delete, data: { confirm: 'Are you sure?' } %>
但这是行不通的。 它只是转到显示页面。
供您参考,这是我的route.rb:
Rails.application.routes.draw do
get 'bets/index'
root 'bets#index'
resources :teams
end
我的控制器:
def destroy
@team = Team.find(params[:id])
@team.destroy
redirect_to teams_path
end
我的application.js:
//= require jquery
//= require jquery_ujs
//= require turbolinks
//= require_tree
//= require jquery
//= require jquery_ujs .
我的application.html.erb:
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %>
<%= javascript_include_tag 'defaults', 'data-turbolinks-track' => true %>
<%= csrf_meta_tags %>
请注意,我尝试将<%= javascript_include_tag 'defaults', 'data-turbolinks-track' => true %>
更改为<%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
,但是这给了我以下错误:
Showing C:/Sites/BettingSite/app/views/layouts/application.html.erb where line #6 raised:
TypeError: Object doesn't support this property or method
(in C:/Sites/BettingSite/vendor/cache/ruby/2.1.0/gems/turbolinks-2.5.3/lib/assets/javascripts/turbolinks.js.coffee)
第6行是该行: <%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
有人可以帮帮我吗?
看来问题在于Windows无法与CoffeeScript一起正常工作。 根据此问题 ,将此宝石添加到您的gemfile
:
gem 'coffee-script-source', '1.9.1'
这样,或者通过将.coffee
或.js.coffee
文件重命名为常规.js
文件(当然,还可以将CoffeeScript代码更改为常规JavaScript),从代码中删除所有CoffeeScript。 您还必须从gemfile
删除所有CoffeeScript宝石。
顺便说一句,当您更新gemfile
,必须运行bundle install
然后重新启动服务器。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.