Rails 5.2 Datatables не будет обновлять данные при изменении страницы - PullRequest
0 голосов
/ 30 апреля 2019

У меня есть проект rails 5.2, для которого настроены таблицы данных.Плагин работает нормально, но если я меняю страницу, то нажимаю кнопку «Назад», данные в таблице не загружаются снова с таблицами данных.Там написано "Нет данных в таблице".Это звучит как проблема с турболинками для меня.

Я использую следующее для генерации таблицы:

$( document ).on('turbolinks:load', function() {
  $("#prjtbl").dataTable();
});

Плагин datatables загружается между изменениями страницы, но данные в таблице не обновляются.Любые идеи о том, как это исправить?

ОБНОВЛЕНИЕ: Application.js

        // This is a manifest file that'll be compiled into application.js, which will include all the files
    // listed below.
    //
    // Any JavaScript/Coffee file within this directory, lib/assets/javascripts, or any plugin's
    // vendor/assets/javascripts directory can be referenced here using a relative path.
    //
    // It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
    // compiled file. JavaScript code in this file should be added after the last require_* statement.
    //
    // Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details
    // about supported directives.
    //
    //= require rails-ujs
    //= require jquery
    //= require datatables
    //= require popper
    //= require bootstrap-sprockets
    //= require shards-dashboards
    //= require trix
    //= require activestorage
    //= require turbolinks
    //= require_tree .

Page.js

    JQuery(function() {
      $( document ).on('turbolinks:load', function() {
        $("#prjtbl").dataTable();
      });
    });

1 Ответ

0 голосов
/ 30 апреля 2019
document.addEventListener("turbolinks:load", function() {
  "use strict";
  if ($("#prjtbl").length == 0) {
    $("#prjtbl").dataTable();
  }
})
...