2013-02-28 2 views
0

Я новичок в grails (ну, новичок во всех программах), но после некоторых исследований я решил попробовать groovy с grails.jquery dataTables dataTables.spanish.txt grails

В настоящее время я изо всех сил пытаюсь использовать таблицы данных с grails ... У меня есть следующий код инициализации для DataTable, и он очень хорошо работает на php, но когда я подключаю его в приложение grails, он автоматически добавляет уровень для каталога, который я указал для моего файла dataTables.spanish.txt, сохраняя экземпляр DataTable для правильной инициализации.

¿Кто-нибудь знает, как я должен указать каталог, чтобы он был хорош на grails?

Мой файл по адресу: /js/tbl/dataTables.spanish.txt

Но при запуске сервера он разбирает де каталог как MYAPP проекта/ /js/tbl/dataTables.spanish.txt

Проект - это имя моего класса домена, и представления для этого класса находятся в этой папке ... Я бы предпочел сохранить этот файл независимо от представлений, поскольку я хотел бы использовать его для нескольких представлений.

Мой код в настоящее время выглядит следующим образом (я должен был прокомментировать строку файла, чтобы избежать ошибки):

$(document).ready(function() { 
    oTable = $('#example').dataTable({ 
     "bJQueryUI": true, 
     "bSortClasses": false, 
     "sPaginationType": "full_numbers", 
     "sDom": '<"H"lf>t<"F"Tip>', 
     "oTableTools": { 
      "aButtons": [ 
        { 
         "sExtends": "csv", 
         "sButtonText": "Exportar" 
        } 
       ] 
      }, 
      "bAutoWidth": true, 
      "aLengthMenu": [[10, 20, 50, 100,-1], [10, 20, 50, 100,    "Todos"]], 
      "iDisplayLength" : 20, 
      "oLanguage": { 
          //"sUrl": "/js/tbl/dataTables.spanish.txt" 
       } 
      }); 

    }); 

ответ

0

Grails работает с Resources plugin организовать JS и CSS файлы. Таким образом, кулак шаг, чтобы объявить файлы, необходимые DataTables в качестве ресурса в вашем ApplicationResources.groovy

modules = { 
    dataTables { 
    resource url: '/js/tbl/jquery.dataTables.min.js' 
    resource url: '/js/tbl/css/jquery.dataTables.css' 
    } 
} 

После этого вы можете потребовать модуль в вашем GSP

<r:require module="dataTables" /> 

А потом объявить javascript, который инициирует вашу таблицу.

<r:script> 
$(document).ready(function() { 
    $('#example').dataTable(); 
}); 
</r:script> 

Все работает? Теперь вы можете редактировать параметры dataTable в соответствии с вашими потребностями. Вы сохранили испанский txt-файл в js, поэтому вам нужно будет использовать ресурсы для поиска местоположения файла, когда ваше приложение запущено.

Изменить

"oLanguage": { 
    "sUrl": "/js/tbl/dataTables.spanish.txt" 
} 

в

"oLanguage": { 
    "sUrl": "${resource(dir: 'js/tbl/', file: 'dataTables.spanish.txt')}" 
}     

Там эта good screencast, которая покажет вам, как ресурсы работы.

+0

Спасибо большое Sérgio. Это действительно меня подводит. – user2121498