2010-09-14 8 views
8

Jadąc z szyn 2, większość moich kontrolerami musiałby te linie:Szyny 2 do Rails 3, weryfikacja metody w kontrolerach już nie istnieje?

verify :method => :post, :only => :create, :render => {:text => '405 HTTP POST required', :status => 405}, :add_headers => {'Allow' => 'POST'} 
verify :method => :put, :only => :update, :render => {:text => '405 HTTP PUT required', :status => 405}, :add_headers => {'Allow' => 'PUT'} 
verify :method => :delete, :only => :destroy, :render => {:text => '405 HTTP DELETE required', :status => 405}, :add_headers => {'Allow' => 'DELETE'} 

Po migracji do szyny 3, pojawia się ostrzeżenie Deprecation mówi mi, że zostały one usunięte. Wiem, że mogę zdobyć jakąś wtyczkę lub coś jeszcze, aby nadal z nich korzystać, ale moje pytanie brzmi: czy naprawdę muszę już to robić? Czy szyny 3 domyślnie wymuszają podstawowe metody? Wygląda na to, że gdyby tak było, zawsze denerwowałem się, że muszę pisać te linie w kółko ...

Odpowiedz

9

Nie musisz weryfikować metody żądania, jeśli korzystasz z tras REST. Działanie kontrolera po prostu nie będzie osiągalne przy użyciu niewłaściwej metody żądania.

Na przykład, jeśli spróbujesz dotrzeć do/users/create? Name = my_name przez get, żądanie osiągnie akcję show z parametrami [: id] = create, a to się nie powiedzie.

Powiązane problemy