[ruby on rails] 跟我学之(9)删除数据
首先需要在index页加个删除链接,并提供一个删除的确认,用户确认删除时,直接删除数据。
修改views
修改 app/views/posts/index.html.erb,如下:
<h1>Our blogs</h1> <% @posts.each do |post| %> <h2><%=link_to post.title,post%></h2> <%=post.context%><br/><hr/> <p> <%= link_to "Update",edit_post_path(post)%> <%= link_to "Delete",post, :confirm =>"Are you sure", :method=>:delete %> </p> <% end %> <p><%= link_to "Add a post", new_post_path %></p>
即添加了
<%= link_to "Delete",post, :confirm =>"Are you sure", :method=>:delete )
post是要删除的实力变量, :confirm ,确认是否删除, :method http 请求的方法,这里是delete请求。 详情见 《[ruby on rails] 跟我学之路由映射》。
修改action
对于delete请求的action为destroy,修改app/controllers/posts_controller.rb文件的destroy方法,如下:
def destroy @post = Post.find(params[:id]) @post.destroy redirect_to posts_path, :notice=>"Your post has been deleted" end
运行服务
运行服务时,发现确认框并没有出来(此问题后续会有专题),其他正常。
转载请注明本文来自:http://www.cnblogs.com/Tommy-Yu/p/4142939.html,谢谢!