Комбинация respond_with
(встроенная в Rails) в сочетании с гемом responders
делает InheritedResources устаревшими.
Пожалуйста, посмотрите на это сообщение в блоге для превосходного объяснения и демонстрации того, как создать RESTful-контроллер с использованием respond_with
.Большинство действий контроллера сводятся к одной строке кода;с InheritedResources можно было иметь контроллер без кода (потому что он был спрятан в жемчужине), но Хосе Валим (создатель InheritedResources) подумал, что это было слишком запутано согласно его цитате:
«Я обнаружил, что абстракция респондентов и пользовательские генераторы Rails обеспечивают идеальный баланс между сокрытием и отображением слишком большого количества логики».
responders
вступает в игру, если вы хотите автоматизировать любые другие частидействие контроллера, например, установка флеш-сообщений.
ОБНОВЛЕНИЕ: для комментатора ниже, который спросил о действии destroy
def destroy
record = Record.find(params[:id])
flash[:notice] = "The record has been destroyed successfully" if record.destroy
respond_with record
end