diff --git a/lib/babushka/accepts_list_for.rb b/lib/babushka/accepts_list_for.rb index 12c895767..449e7087c 100644 --- a/lib/babushka/accepts_list_for.rb +++ b/lib/babushka/accepts_list_for.rb @@ -19,7 +19,7 @@ def #{method_name} *args, &block elsif args.blank? && block.nil? #{opts[:type]}_for #{method_name.inspect}, #{default.inspect} else - store_#{opts[:type]}_for #{method_name.inspect}, block || [*args.compact].flatten, #{opts[:choose_with].inspect} + store_#{opts[:type]}_for #{method_name.inspect}, block || [*args].flatten, #{opts[:choose_with].inspect} self end end @@ -37,7 +37,7 @@ def store_list_for method_name, data, choose_with def list_for method_name, default if payload.has_key? method_name - payload[method_name].map {|i| i.respond_to?(:call) ? i.call : i } + payload[method_name].map {|i| i.respond_to?(:call) ? i.call : i }.compact else [*(default.is_a?(Symbol) ? send(default) : (default || []))] end