2011-09-25 90 views
1

我一直在尋找Simple Datatables,但提供的文檔和示例不是很清楚。它似乎實現了jsonify並使用模板處理程序,但我不確定。所提供的代碼也不能編譯;作者是否使用其他gem來解析視圖?例如,它說,把這個在您的搜索視圖...Rails 3.1 simple_datatables

@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 

但如果我這樣做,它只是把那原始文本在我看來。再次,似乎作者正在使用一些gem來解析他的觀點,但沒有在文檔中引用它。有什麼想法嗎?謝謝!

編輯:
好了,我該表通過調用它作爲一個表...咄正確加載...

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

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

但現在告訴我,沒有數據加載。我檢查了路線和/搜索作品,但/search.datatables回來告訴我沒有模板。再次感謝,

回答

1

作者沒有使用任何其他的寶石,據我所知。

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

你需要把上面的代碼放到search.datatables.jsonify文件,而不是僅僅search.datatables。

此外,您應該在您的表格標記中將class =「products」更改爲id =「products」。你也想把相應的ID放入第th標籤中。

最後的JavaScript有點錯位太大,請嘗試以下

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

希望這有助於。

0

索引視圖使用哈姆寶石。