def apply_with_get_params(params = {})
      base_path = apply_named_params(params)
      get_params = params.reject { |param_name| named_params.values.include?(param_name) }

      get_params.empty? ? base_path : "#{base_path}?#{URI.encode_www_form(get_params)}"
    end
def apply_with_get_params(params = {})
      base_path = apply_named_params(params)
      get_params = params.reject { |param_name| named_params.values.include?(param_name) }

      get_params.empty? ? base_path : "#{base_path}?#{URI.encode_www_form(get_params)}"
    end
For path = '/hello/:hello_id/say' & params = { hello_id: 1, search: 'cat' }
 it will return '/hello/1/say?search=cat'