simple_datatables gemを使用しようとしていますが、ドキュメントがそれほど明確ではありません。
ブラウザにsearch.datatablesとsearch.htmlをロードすると、JSONコンテンツが取得されますが、インデックスビューを使用すると、テーブルにデータが入力されません。
私はこのコンテンツでapp/views / trades /search.jsonifyを作成しました:
@trades.each do |t|
json << [
t.tddt,
... # omitted for brevity
t.sdbk,
]
end
そして、TradesControllerに「検索」コントローラーアクションを追加しました。
respond_to :html, :datatables
def search
@trades = Trade.search(params[:search])
respond_with @trades
end
def index
respond_to do |format|
format.html # index.html.erb
end
end
同様に、ドキュメントに示されているように、このjavascriptをapp / views/index.html.erbに追加しました。
<script type="text/javascript">
$("#trades_tbl").dataTable({
"sAjaxSource" : "/trades/search.datatables",
"aaSorting" : [[0,'asc']],
"aoColumns" : [
{"sName":"tddt"},
... // again omitted for brevity
{"sName":"sdbk"},
],
"bServerSide" : true,
"fnServerData" : simpleDatatables
});
</script>
そして、これが同じファイルのテーブルです。
<table id="trades_tbl">
<thead>
<tr>
<th>Tddt</th>
<!-- more columns omitted for brevity -->
<th>Sdbk</th>
</tr>
</thead>
<tbody/>
</table>
だから私は何が欠けていますか?JavaScriptがテーブルをロードしないのはなぜですか?
ありがとう。
注: 1500以上の評判を持つ人が、simple_datatablesタグを作成するほど親切であれば、それは良いことだと思います。