Hi all,
I’m learning Rails by Example (chapter 11), by Michael H. (
http://ruby.railstutorial.org/chapters/user-microposts#top) but I got no
route matches when I try to delete one micropost.
the _micropost html is…
<%= micropost.content %> Posted <%= time_ago_in_words(micropost.created_at) %> ago. <% if current_user?(micropost.user) %> <%= link_to "delete", micropost, :method => :delete, :confirm => "You sure?", :title => micropost.content %> <% end %>the controller is…
class MicropostsController < ApplicationController
before_filter :authenticate, :only => [:create, :destroy]
before_filter :authorized_user, :only => :destroy
def create
@micropost = current_user.microposts.build(params[:micropost])
if @micropost.save
flash[:success] = “Micropost created!”
redirect_to root_path
else
@feed_items = []
render ‘pages/home’
end
end
def destroy
@micropost.destroy
redirect_back_or root_path
end
private
def authorized_user
@micropost = current_user.microposts.find(params[:id])
rescue
redirect_to root_path
end
end
and finally, the route is…
SampleApp::Application.routes.draw do
resources :users
resources :sessions, :only => [:new, :create, :destroy]
resources :microposts, :only => [:create, :destroy]
match ‘/signup’, :to => ‘users#new’
match ‘/signin’, :to => ‘sessions#new’
match ‘/signout’, :to => ‘sessions#destroy’
match ‘/contact’, :to => ‘pages#contact’
match ‘/about’, :to => ‘pages#about’
match ‘/help’, :to => ‘pages#help’
root :to => 'pages#home'
end
Please, let me know if you can help me.