Обычно это происходит из-за отсутствия зависимости JS в application.js
.
Если вы используете Rails 5, добавьте:
//= require rails-ujs
И для более ранних версий убедитесь, что у вас есть:
//= require jquery
//= require jquery_ujs
Там.
Причина этого в том, что небольшое волшебство Rails «подделывает» запрос на удаление, так как большинство браузеров не поддерживают это.Он добавит data-method="delete"
к вашему HTML-тегу, что позволит вашему приложению распознавать запрос, как и должно быть, и обрабатывать как DELETE
(даже если на самом деле отправлено как GET
запрос).
Кроме того, убедитесь, что вы загружаете указанный Javascript через следующую строку в вашем макете:
<%= javascript_include_tag "application" %>
Дайте мне знать, как у вас идут дела или если у вас есть какие-либо вопросы - надеюсь, это поможет.