Rails link_to与数组中的下一个位置的项目

问题描述:

我试图创建链接来浏览数组。我有三个类: fsets,line_items和示例。Rails link_to与数组中的下一个位置的项目

在我的应用程序中,我有它在一个页面上显示用户图像。我希望用户能够点击下一个/上一个链接转到数组中的下一个元素。我目前可以在页面上显示所有图像,但无法找到如何创建下一个/上一个链接。在应用程序的其他地方,我已经使用以下内容去db中的下一条记录,但是不知道如何为数组实现相同的记录。

def previous 
    Exemplar.where(["id < ?", id]).last 
    end 

    def next 
    Exemplar.where(["id > ?", id]).first 
    end 

我希望如果我可以在阵列中返回的索引位置,我可以LINK_TO下一个,但我无法弄清楚如何做到这一点。我从显示元素的当前位置和上一个/下一个位置开始。

next: <%= (params[:pos].gsub(/\D/, '').to_i + 1) %> 
    current: <%= params[:pos].gsub(/\D/, '').to_i %> 
    previous: <%= (params[:pos].gsub(/\D/, '').to_i - 1) %> 

我使用pos传递参数中每个元素的索引位置。因此,当页面第一次加载时:pos设置为0.页面底部有链接,允许用户跳转到数组中的项目。这些链接也通过索引位置。我知道有一种更简单的方法可以做到这一点,而我已经走上了考虑所有这些的错误路径/方式。只是认为,即使完全错误,展示我所尝试的内容也会有所帮助。

这颗宝石会做你需要的。 https://github.com/mislav/will_paginate

如果你可以链接到你的github我可能能够帮助更多。您需要将该分页逻辑提取到某个不是activerecord模型的地方。

+0

我在我的应用程序中的其他地方使用了will_paginate,并且想通过将数组的每个分页设置为每页1来使用它作为解决方案。我在学习这个项目时仍然在学习很多东西,并且想自己尝试编写这个解决方案。我希望能有一个更容易理解的解决方案,但如果我无法得到,我可能会使用宝石。谢谢您的回复! – cjiro 2015-02-11 03:12:22