0

私はRubyにかなり慣れていません。DRYしたいコードが数行あります。

foo_attributes = params[:foo]
params.delete(:foo)
bar_attributes = params[:bar]
params.delete(:bar)

私はこのようなことをしようとしています

["foo", "bar"].each do |par|
  par_attribute = params[:par]
  params.delete(:par)
end

メソッドの後半で、オブジェクト foo_attribute、bar_attribute を渡す他のメソッドを呼び出す必要があります。

お気に入り:

call_foo_method(foo_attribute)

ルビーでこれを行うにはどうすればよいですか?

4

1 に答える 1

0

変数を保持してみませんparamsか?それでは、他の変数をまったく割り当てる必要はありませんか?

2 つの行を組み合わせることで、最初 (および 2 番目の例) を DRY することもできます。

foo_attributes = params.delete(:foo)
bar_attributes = params.delete(:bar)
于 2012-08-29T17:35:06.213 に答える