0

だから私はこのコードを持っています:

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

アソシエーションに何も見つからない場合は、空の配列を作成したいと思います。現在、何も見つからない場合は[null]、期待するtokeninoputjavascriptをトリップするものが返されます[]

次のような別のメソッドを作成することで、これを行うことができます。

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 に答える