1

关于如何在 Rails 应用程序中对资源实现排序和分页并仍然保持 RESTful 的任何提示?

如何以干净的方式映射页码和排序字段的参数?(我目前正在为我的应用程序中的每个资源使用map.resources :x )

我应该知道的任何其他性能问题?(例如缓存)

提前致谢。

编辑我将问题重新表述为更通用的问题,希望我能得到更多答案。我将投票关闭这个,因为它不再相关。感谢 insane-dreamer 和 vrish88 的回答。

4

2 回答 2

5

Have you tried will_paginate? Is there some reason it doesn't meet your specific needs? (http://github.com/mislav/will_paginate/tree/master)

于 2009-04-18T15:04:53.350 回答
2

我建议你看看这篇文章:

http://dev.nozav.org/rails_ajax_table.html

http://dev.nozav.org/ajaxtable/ (这是演示应用程序)

我在我的一个应用程序中使用了相同的基本代码。我没有使用他们描述的 AJAX 实现,但我使用了他们提到的排序助手,然后我构建了我的视图以启用排序。在排序助手中,您只想取出与 ajax 相关的东西。我的最终看起来像这样:

def sort_link_helper(text, param)
  key = param
  key += "_reverse" if params[:sort] == param
  parameters = params.merge({:sort => key, :page => params[:page], :action => controller.action_name })
  link_to(text, url_for(parameters))
end

def sort_td_class_helper(param)
  result = 'class="sortup"' if params[:sort] == param
  result = 'class="sortdown"' if params[:sort] == param + "_reverse"
  return result
end

这个实现最好的部分是 RESTful、DRY 和易于使用!

于 2009-03-24T10:08:18.033 回答