Maneira mais eficiente de passar o hash dos parâmetros do Rails para a rota nomeada

Preciso de uma maneira mais eficiente de passar o hash dos parâmetros para uma rota nomeada, incluindo a capacidade de adicionar / remover / modificar um par de chave / valor.

Adicionando uma chave (o símbolo da empresa), preservando o restante do hash dos parâmetros (especifique manualmente cada símbolo / valor):

# adds the company filter
link_to_unless params[:company]==company, company, jobs_path(:company=>company, :posted=>params[:posted],:sort=>params[:sort],:dir=>params[:dir])

A remoção de uma chave (elimina o símbolo: companhia), preservando o restante do hash dos parâmetros (especifique manualmente cada símbolo / valor):

# create a link that removes the company filter
link_to_unless_current 'x', jobs_path(:posted=>params[:posted],:sort=>params[:sort],:dir=>params[:dir])

Pensei em passar diretamente o hash dos parâmetros, mas isso gera uma exceção:

link_to_unless params[:company]==company, company, jobs_path( params )

Estou esperando por algumas alternativas mais secas.

questionAnswers(3)

yourAnswerToTheQuestion