【发布时间】:2013-12-28 21:58:22
【问题描述】:
当我点击 Destroy 链接时,帖子被打开(呈现显示动作)而不是被销毁。
视图中的行:
<%= link_to 'Destroy', post_path(post),
method: :delete, data: { confirm: 'Are you sure?' } %>
posts_controller.rb 片段:
def destroy
@post = Post.find(params[:id])
@post.destroy
redirect_to posts_path
end
耙路线:
posts GET /posts(.:format) posts#index
POST /posts(.:format) posts#create
new_post GET /posts/new(.:format) posts#new
edit_post GET /posts/:id/edit(.:format) posts#edit
post GET /posts/:id(.:format) posts#show
PATCH /posts/:id(.:format) posts#update
PUT /posts/:id(.:format) posts#update
DELETE /posts/:id(.:format) posts#destroy
在 routes.rb 中
resources :posts do
resources :comments
end
当我点击销毁链接时在 development.log 中:
Started GET "/posts/5" for 127.0.0.1 at 2013-12-28 21:51:40 +0000
Processing by PostsController#show as HTML
Parameters: {"id"=>"5"}
[1m[35mPost Load (0.2ms)[0m SELECT "posts".* FROM "posts" WHERE "posts"."id" = ? LIMIT 1 [["id", "5"]]
[1m[36mComment Load (0.2ms)[0m [1mSELECT "comments".* FROM "comments" WHERE "comments"."post_id" = ?[0m [["post_id", 5]]
Rendered collection (0.0ms)
Rendered comments/_form.html.erb (7.6ms)
Rendered posts/show.html.erb within layouts/application (12.6ms)
[1m[35mAdmin Load (0.2ms)[0m SELECT "admins".* FROM "admins" WHERE "admins"."id" = 1 ORDER BY "admins"."id" ASC LIMIT 1
Completed 200 OK in 18ms (Views: 15.8ms | ActiveRecord: 0.8ms)
我知道问题可能是由于我在 routes.rb 中使用“resources :posts”引起的,但是我该如何删除帖子呢?
如果您需要任何其他信息,请告诉我。 谢谢
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-4