ой ..
Я пропустив наступний рядок у своїй програмі application.js
//= require jquery_ujs
Я замінив його та його роботу ..
======= ОНОВЛЕНО =========
Через 5 років я знову з тією ж помилкою, тепер у мене є абсолютно нові Rails 5.1.6 , і я знову знайшов цю посаду. Так само, як коло життя.
Тепер у чому полягала проблема:
Rails 5.1 видалив підтримку jquery та jquery_ujs за замовчуванням та додав
//= require rails-ujs in application.js
Це:
- діалогове вікно підтвердження сили для різних дій;
- робити не-GET запити від гіперпосилань;
- змушуйте форми або гіперпосилання подавати дані асинхронно з Ajax;
- кнопки надсилання автоматично відключаються під час надсилання форми, щоб запобігти подвійному клацанню. (від: https://github.com/rails/rails-ujs/tree/master )
Але чому він не включає маркер csrf для запиту ajax? Якщо хтось детально про це знає, просто прокоментуйте мене. Я ціную це.
У будь-якому випадку я додав у власний js-файл наступне, щоб він працював (дякую за інші відповіді, які допомогли мені дійти до цього коду):
$( document ).ready(function() {
$.ajaxSetup({
headers: {
'X-CSRF-Token': Rails.csrfToken()
}
});
----
----
});