Я новичок в рельсах. Моя версия рельсов 2.3.5. Я нашел использование, например:
В контроллере определен метод уничтожения, и вы можете использовать :action => «delete», чтобы запустить этот метод. Разве имя действия не должно совпадать с именем метода? Почему удаление отображается на уничтожение?
Опять же, в моем контроллере я определяю метод с именем destroy для удаления записи. В представлении у меня есть <%= link_to "remove", :action => 'destroy', :id => myrecord %>
. Но на практике это никогда не работает. Каждый раз, когда я нажимаю на ссылку удаления, она перенаправляет меня в режим просмотра, показывающий содержимое записи. Я почти уверен, что мой метод уничтожения:
def destroy
@myobject = MyObject.find(params[:id])
@myobject.destroy
@redirect_to :action = 'index'
end
Если я изменю имя метода с destroy на что-то вроде remove_me и изменю имя действия на remove_me в представлении, все будет работать так, как ожидалось.
В двух вышеупомянутых странных проблемах я уверен, что в моей конфигурации нет сложной маршрутизации.
В общем, кажется, что уничтожение и удаление являются загадочными ключевыми словами в рельсах. Кто-нибудь может мне это объяснить?