同じことを行う必要があるルートを作成する必要があるとします: 特定の URL にリダイレクトし、params をいくつか置き換えます。
get '/santitizer', to: redirect {|path_params, req| "/new_url/#{URI.encode(req[:my_param].gsub('.', ' '))}}"}
get '/old_santitizer', to: redirect {|path_params, req| "/new_url/#{URI.encode(req[:my_param].gsub('.', ' '))}}"}
DRYを適用し、同じコードを2回使用するのではなく、ヘルパーメソッドを使用してこのようなことをしたい
get '/santitizer', to: redirect {|path_params, req| santitize_helper(path_params, req)}
get '/old_santitizer', to: redirect {|path_params, req| santitize_helper(path_params, req)}
...
def santitize_helper(path_params, req)
"/new_url/#{URI.encode(req[:my_param].gsub('.', ' '))}}"
end
出来ますか?