我有
<%= link_to 'Destroy', project, :method => :delete, :data => { :confirm => 'Are you sure?' } %>
但是当我在视图中单击“Destroy”时,它会显示项目(将我路由到/project/:id
)
# routes.rb
resources :users
resources :projects do
resources :issues
end
resources :issues
resources :sessions
root :to => "users#index"
match "/auth/:provider/callback" => "sessions#create"
match "/signout" => "sessions#destroy", :as => :signout
# projects_controller.rb
def destroy
@project = Project.find(params[:id])
@project.destroy
respond_to do |format|
format.html { redirect_to projects_url }
format.json { head :no_content }
end
end
但“编辑”效果很好。 你知道吗,问题在哪里?
并且有一个aplication.html.erb
#aplication.html.erb
<!DOCTYPE html>
<html>
<head>
<title>Project manager</title>
<%= stylesheet_link_tag "application", :media => "all" %>
<%= javascript_include_tag "application" %>
<%= csrf_meta_tags %>
</head>
<body>
<% if current_user %>
Welcome <%= current_user.username %>
<%= link_to "Signout", signout_path %>
<% else %>
<%= link_to "Sign in with twitter", "/auth/twitter" %>
<% end %>
<%= yield %>
</body>
</html>
最后是aplication.js
#aplication.js
= require jquery
//
= require jquery_ujs
//
= require_tree .
//
= require prototype_nested_form
//
= require jquery_nested_form
= require bootstrap
PS:服务器重启没有帮助
答案 0 :(得分:1)
我已经解决了。我不知道为什么,但是当我删除这两行时
#aplication.js
= require jquery
= require jquery_ujs
一切正常。
答案 1 :(得分:0)
试试这个
<%= link_to 'Destroy', project, :method => :delete, :confirm => 'Are you sure?' %>
查看文档:http://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html#method-i-link_to
<强>更新
destroy link
有delete method
,因此当您检查show
时,网址应该看起来像show action
但get method
有rake routes
。
destroy和show方法都显示相同的url但方法不同。为了显示它是一个获取和销毁它是一个删除方法。