问题标签 [will-paginate]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
44498 浏览

ruby-on-rails - 从 Rails 中的 gem 覆盖模块方法

will_paginate gem 在我的 Oracle 版本上已损坏。WillPaginate 模块中的默认paginate_by_sql方法是在查询中插入额外的“AS”并导致查询失败。

代码本身很容易修复,但我不确定让 Rails 接受我的更改的最佳方法。

我不想更改 gem 本身的代码,因为这会使我的代码在其他机器上损坏。

我尝试创建一个 lib/test.rb 文件,其中包含:

并从 environment.rb 中要求它,但它没有接受我的更改。我也尝试从 controllers/application.rb 中要求它,但同样,没有接受我的更改。

暂时,我通过覆盖特定模型本身的方法来让它工作,但这有点小技巧,意味着我不能在这个项目中的任何其他模型上使用它。

我确信有一个简单的方法可以做到这一点,但我没有任何运气使用谷歌追踪它。

0 投票
4 回答
1099 浏览

ruby-on-rails - 使用 will_paginate 对博客文章的随机列表进行分页

我想让用户能够以随机顺序翻阅我的博客文章。

我不能像这样实现它:

由于:order每个查询都会调用该参数,因此我冒着重复博客文章的风险。

最好的方法是什么?

0 投票
3 回答
3777 浏览

ruby-on-rails - 项目的页面和 will_paginate

我有一些通过 will_paginate 插件在连续页面上拆分的照片。当您打开一张照片然后使用链接返回所有照片时,您总是会返回到第一页(例如,照片显示在第 5 页,您打开照片,单击链接以显示所有照片并期望您在再次第 5 页,但您在第 1 页)。

现在,有什么方法可以获取照片所属的页码吗?

我试图传递一个 GET 参数,但这仅在用户不再执行任何操作时才有效(例如发表评论、编辑照片、ecc。)。

0 投票
2 回答
936 浏览

ruby-on-rails - 帮助解释 will_paginate 文档?

试图了解 will_paginatepaginate方法的选项:

page, per_page, 和finder是直截了当的。

total_entries并且count——不理解“仅在您手动计算条目时使用?” 他们是否设想了一个场景,您将运行单独的计数查询,然后将结果paginate作为选项传递给?你会在什么情况下这样做?

“传递给计数的其他选项” - 哪些选项可用?“传递”到count方法???

0 投票
4 回答
4953 浏览

ruby-on-rails - 将 will_paginate 与多个模型一起使用(Rails)

很确定我在这里遗漏了一些非常简单的东西:

我正在尝试显示一系列包含两个不同模型实例的页面 - 配置文件和组。我需要他们按名称属性排序。我可以为每个模型选择所有实例,然后对它们进行排序和分页,但这感觉草率且效率低下。

我正在使用 mislav-will_paginate,并且想知道是否有更好的方法来实现这一点?就像是:

将是理想的!

0 投票
3 回答
8286 浏览

ruby-on-rails - Rails:使用 will_paginate 如何在每页显示 10 或 20 或 50 个结果?

又是我...

我需要使用 will_paginate 插件在我的帖子列表中显示 10 或 20 或 50 个结果

你能帮我吗?

谢谢!

0 投票
1 回答
1293 浏览

ruby-on-rails - 覆盖 Rails mislav-will_paginate 插件

我正在使用 Rails mislav-will_paginate 插件对我的记录进行分页。无论是否有多个页面,我都想产生以下输出:

如果只有一页记录,WillPaginate::ViewHelpers 中的 will_paginate 返回 nil。如果只有一页,我想以最简洁的方式覆盖它以产生上述输出,或者如果有多页,则上述输出被通常的输出包围。

我已经重写了 WillPaginate::LinkRenderer 的 to_html 方法来产生这个输出,但是如果只有一页记录,我不知道如何产生它。

我是否应该移动代码以在其他地方生成 X - Y of Z 并从我的覆盖 to_html 方法以及如果它返回 nil 时从我进行 will_paginate 调用的地方调用它?如果是这样,它应该住在哪里?

0 投票
5 回答
64523 浏览

ruby-on-rails - will_paginate 未定义的方法`total_pages'

我在这里想念什么?我正在使用 haml_scaffold 生成器,并且页面可以与 will_paginate 一起正常工作。当我开始修修补补时,我最终得到了这个“total_pages”错误,我不确定我在做什么导致它。任何人有任何见解?我正在使用 mislav-will_paginate 2.3.11。

0 投票
1 回答
7393 浏览

ruby-on-rails - 使用不带 :total_entries 的 will_paginate 来改进冗长的查询

我有一个will_paginate的当前实现,它使用paginate_by_sql方法来构建要分页的集合。我们有一个针对total_entries的自定义查询,该查询非常复杂,会给我们的数据库带来很大的负担。因此,我们希望完全从分页中删除 total_entries。

换句话说,我们只需要一个“下一个 - 上一个”按钮,而不是典型的分页显示“上一个 [2] 3 4 5 下一个”。但是我们需要知道一些事情。

  1. 我们是否显示上一个链接?当然,只有在当前选择中显示的记录之前存在记录时才会发生这种情况
  2. 我们是否显示下一个链接?如果正在显示集合中的最后一条记录,则不会显示

文档

如果您不提供 :total_entries,将自动生成计算行数的查询。如果您在使用此生成的 SQL 时遇到问题,您可能希望在应用程序中手动执行计数。

所以最终理想的情况如下。

  • 删除 total_entries 计数,因为它导致数据库负载过大
  • 一次显示 50 条记录,半分页仅使用下一个/上一个按钮进行导航,无需显示所有可用页码
  • 仅相应地显示下一个按钮和上一个按钮

有没有人处理过类似的问题或对解决方案有想法?

0 投票
1 回答
554 浏览

ruby-on-rails - will paginate miscounting oddness with named scopes

I recently broke up my query into 4 named scopes to make it easier to re-sort and will paginate which otherwise always worked fine now has problems calculating the number of pages.

Used like so with paginate thrown on the end...

Paginate will for example show that there are 6 pages of 15 each but when you get to page 4, pages 5-6 disappear... and if you try jumping to 5 or 6 directly they don't exist.

Looking at it, I realized to problem will paginate is having is that

however

The sql getting generated for the former is about 8 lines shorter than that of the latter and neglects my sql HAVING clause which causes it to return more results...

Any ideas on how to fix this?