Rails – 给定@Comments – 如何获得第二个到最后一个评论而没有重新命名数据库
给定@comments可以包含1个或多个记录。 我如何获得倒数第二条评论?
谢谢
我想这也将被称为倒数第二条记录:
@comments[-2]
以下是 Ruby有趣的索引运算符的文档 1 。
1. Rubyists,请注意我是如何联系到这一点的。 如果你从ruby-doc链接中取出版本,那么引用将是持久的并且是最近的。
使用任何Ruby数组,您可以指定任何范围或特定索引,例如,如果您想要从第二个最旧到第二个最新的评论,您可以这样做:
@comments[1..-2]
并获得倒数第二个:
@comments[-2]
Ruby Array#range的文档
在Rails中,如果你想要最后两个注释,那么你可以这样做,它返回最后两个的数组:
@comments.last(2)
ActiveRecord :: FinderMethods的文档
可以包含1个或多个记录
这个问题已经过时了,但对于那些现在来到这里的人来说……
如果只有一条记录,其他解决方案将返回nil。 如果您想确保返回记录使用:
@comments.last(2)[0]
@comments[-2]
这和你上一个问题几乎一样。
@comments = Comment.all #Gather all comments from DB, filter as necessary. @comments[-2] #Second to last comment in array
- Sidekiq没有找到Rails Active Job的记录
- ActiveRecord,double belongs_to
- heroku rake db:migrate ERROR“gem install activerecord-mysql-adapter”
- “rails generate”无法正常工作
- ChartKick在PIE和折线图中显示原始值而非百分比
- 通过与Savon的SOAP调用,与Nokogiri一起阅读回复
- 可以在rails中来自同一台计算机的浏览器之间共享会话吗?
- 如何根据图片模型在Ruby On Rails中设置CKeditor中图像的大小?
- 由于模块名称空间中的下划线,从rails 3.1升级到rails 3.2时出现路由错误