TableTools для DataTables, с Rails 3 не работает
Переполнение стека обычно хорошо с точки зрения решений, но я не смог найти решение этой проблемы.
Я пытаюсь настроить TableTools с Datatables для моего приложения Rails, но это не работает. Как ни странно, веб-сайт не очень помогает с этим так называемым "плагином". На сайте говорится, что вы просто добавляете около 5 строк скрипта, но это не работает. После нескольких часов работы над этим я обнаружил отладчик DataTables здесь:
Запустив эту закладку на своих страницах, я обнаружил, что TableTools даже не распознается как установленный. Я подумал, что это было странно, поскольку файлы, кажется, включены в DataTables. Итак, я переместил файлы.js для TableTools в каталог /lib/assets/javascript/. После изменения файла application.js и application.css на следующий, TableTools был распознан как установленный:
application.js:
//= require jquery
//= require jquery_ujs
//= require dataTables/jquery.dataTables
//= require TableTools
//= require ZeroClipboard
//= require_tree .
application.css:
*= require_self
*= require jquery.ui.core
*= require jquery.ui.theme
*= require dataTables/src/demo_table_jui
*= require dataTables/extras/TableTools
*= require dataTables/extras/TableTools_JUI
*= require_tree .
*/
Теперь к фактическому файлу js.coffee. Я заставил DataTables работать отлично с этим кодом:
jQuery ->
$('#artists').dataTable
sPaginationType: "full_numbers"
bJQueryUI: true
Но когда я добавляю часть для TableTools, ничего не меняется. Это изменение, которое я сделал:
jQuery ->
$('#artists').dataTable
sPaginationType: "full_numbers"
bJQueryUI: true
sDom: 'T<"clear"><"fg-toolbar ui-widget-header ui-corner-tl ui-corner-tr ui-helper- clearfix"lfr>t<"fg-toolbar ui-widget-header ui-corner-bl ui-corner-br ui-helper-clearfix"ip>'
oTableTools: {
sSwfPath: "http://localhost:3000/swf/copy_csv_xls_pdf.swf" }
Эта версия сценария js.coffee содержит полный URL-адрес, по которому находится файл swf. Я нашел на МНОГИХ страницах, что люди неоднократно говорили, что путь был неправильным. Этот путь больше не может быть правильным, так как я переместил папку swf в каталог Public и использовал этот путь. Я попробовал это локально, и это не сработало. Я изменил URL-адрес на сайт Heroku, где я нажимаю на приложение, подтолкнул его вверх, и там тоже не работает.
Помоги мне, переполнение стека... ты моя единственная надежда.
1 ответ
Как ни странно... после работы над другой проблемой я случайно это исправил. Я думаю, что проблема возникла из-за проблем с Heroku и прекомпиляцией. Поскольку я использую Devise, прекомпиляция должна быть отключена. Но его можно запустить вручную, прежде чем нажать на Heroku. Итак, после того, как я предварительно скомпилировал, чтобы исправить другую проблему, кнопки стали доступны.