0

所以我有这段代码:

= f.input :aspectRatioId, :label => 'Aspect Ratio', 
:input_html => { :id => 'dvd_aspectRatio_tokens', :data => { :load => [@dvd.aspectRatio] } }

当在关联中找不到任何内容时,我想创建一个空数组。现在,当没有找到任何东西时,它会返回[null]它会导致预期的 tokeninoput javascript[]

我可以通过创建另一个这样的方法来做到这一点:

def self.series_without_empty_values(dvd)
  series = [dvd.dvd_series]
  if series[0].nil?
    series = []
  end
  return series
end

但我宁愿在:load =>表格上的电话中这样做。这甚至可能吗?

4

1 回答 1

4

用于Array.compact删除nil数组中的值:

[ "a", nil, "b", nil, "c", nil ].compact
=> [ "a", "b", "c" ]

[nil].compact
=> []
于 2012-05-22T18:15:59.737 回答