Rails 3.1 simple_datatables - PullRequest
       0

Rails 3.1 simple_datatables

1 голос
/ 25 сентября 2011

Я просматривал Simple Datatables , но предоставленная документация и пример не очень понятны. Кажется, для реализации jsonify и использования обработчика шаблонов, но я не уверен. Также предоставленный код не компилируется; автор использует какой-то другой драгоценный камень для анализа представлений? Например, он говорит, чтобы поместить это в ваш вид поиска ...

@products.each do |product|
  json << [product.name, product.manufacturer.name]
end

который я предполагаю должен быть переведен в ...

<%= @products.each do |product| %>
 <% json << [product.name, product.manufacturer.name] %>
<% end %>

но он возвращается и говорит "неопределенная локальная переменная или метод" json "для класса бла-бла"

тот же тип сделки для представления индекса. В примере написано, что просто бросьте это на ваш взгляд,

%table#products
  %thead
    %tr
      %th= Product.human_attribute_name :name
      %th= Product.human_attribute_name :manufacturer

  %tbody

но если я сделаю это, он просто поместит этот необработанный текст в мое представление. Опять же, похоже, что автор использует какой-то драгоценный камень для анализа своих взглядов, но не ссылается на него в документах. Какие-нибудь мысли? Спасибо!

Edit:
Итак, я получил таблицу для правильной загрузки, назвав ее таблицей ... хм ...

<table class="products">
  <thead>
  <tr>
    <th>Name</th>
    <th>Manufacturer</th>

 </thead>
 <tbody></tbody>
 </table>

но теперь он говорит, что у него нет данных для загрузки. Я проверил маршрут и / search работает, но /search.datatables возвращается и говорит, что шаблона нет. Еще раз спасибо,

Ответы [ 2 ]

1 голос
/ 10 октября 2011

Насколько я могу судить, автор не использует никакой другой драгоценный камень.

@products.each do |product|
   json << [product.name, product.manufacturer.name]
end

Вам нужно поместить приведенный выше код в файл search.datatables.jsonify, а не просто search.datatables.

Также вы должны изменить class = "products" на id = "products" в вашей разметке таблицы. Вы также захотите поместить соответствующие идентификаторы в теги th.

Наконец, JavaScript тоже немного искажен, попробуйте следующее

$("#products").dataTable( {
   "sAjaxSource"     : "/products/search.datatables",
   "aaSorting"       : [[0, 'asc']],
   "aoColumns"       : [
      {"sName":"name"},
      {"sName":"manufacturer_name"},
],
"bServerSide"     : true,
"fnServerData"    : simpleDatatables
});

Надеюсь, это поможет.

0 голосов
/ 14 марта 2012

Представление индекса использует гем haml.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...