Ruby on Rails,从另一个实例变量的属性创建一个实例变量



我认为这是一个简单的问题,但我似乎无法用头脑来解决它。我想从另一个实例变量的属性创建实例变量。例如:

@posts = Post.find(:all, :conditions => ['day > ?', Date.today], :order => 'day')

我想获得另一个实例变量,它包含@posts中的所有日期。有没有一种方法可以在不创建帮助程序/函数的情况下快速获得它?谢谢

@posts.map(&:day)

这是的简写

@posts.map do |post|
  post.day
end

结果是每个post.day 的值的数组

韦恩拥有的是合适的。我更喜欢收集而不是地图,但它们是等价的。

@dates = @posts.collect{|post| post.day}.uniq

请注意,末尾的uniq将为您提供唯一的值。

相关内容

  • 没有找到相关文章

最新更新