渲染复杂表行的最有效方法是什么?

时间:2013-07-04 19:21:43

标签: ruby-on-rails-3 datatables mustache web-worker

我想制作一个“人物”表格,其中每个属性都是内联可编辑的。大约有500人,名单会随着时间的推移而增长。人员#index页面包含此列表。

由于存在大量表单元素,因此服务器需要很长时间才能呈现页面。我用来托管的服务器也相当慢,所以我考虑让Javascript进行这些表的渲染。

目前,我创建了一个新动作来返回所有人的属性的JSON数据,我使用Rails只生成该行的模板。然后我使用jQuery克隆该模板,并将JSON数据中的每个属性插入到一个新副本中,并将其添加到行中。

这使得人们#index加载速度要快得多,但是现在我遇到了Javascript冻结页面一秒钟加载的问题。

我调查了网络工作者创建一个线程来完成这项工作。我打算在一个单独的线程上生成额外的行,然后将它添加到我的表中(我正在使用dataTables)。

我觉得我可能会遗漏一些东西。这是一个草率的解决方案。

我的问题是,有更好的方法吗?

1 个答案:

答案 0 :(得分:0)

可能的选择:

1分页   我在这种情况下分页是最好的解决方案。   分页可以在轨道侧(https://github.com/mislav/will_paginatehttps://github.com/amatsuda/kaminari宝石)或在js侧完成。

2您也可以使用http://trirand.com/blog/jqgrid/jqgrid.html之类的内容   这个JS组件也能够内联编辑数据,你可以搜索像https://github.com/allen13/rails-asset-jqgrid这样的rails集成宝石