由于必须通过 cookie 存储进行一些花哨的搜索,我有一个 (Model) 对象数组。
@ads 包含
[{:id => 9283
:name => "Name Here"
:price => 2000
:phone => "999-999-9999"
}]
等,用于多个对象。因此,一个二维数组(当然,实际上类似于一个 Hash,但 Rails 在 Arrays 中处理它时使用的 find() 和 find_all_by() 方法。
我需要做的是,在给定的广告页面上,将单个对象标记为“当前”广告,以便在视图中这样表示。
我已经把它隔离了
@ads.select {|a| a[:id] == id}
但如果我尝试
@ads.select {|a| a[:id] == id}.push :current => true
我似乎最终在该对象元素内添加了一个新元素,如下所示:
@ads 然后包含
[{:id => 9283
:name => "Name Here"
:price => 2000
:phone => "999-999-9999"},
{:current=>true}]
如何将其添加到所选对象的现有属性中,以便通过视图中的简单 ad[:current] 访问它?我应该做一个循环吗?