Рефакторированная версия. Поместите это в целевой контроллер, чтобы он не был глобальным:
ужен более эффективный способ передачи хэша params на именованный маршрут, включая возможность добавлять / удалять / изменять пару ключ / значение.
Добавление ключа (символа: company) с сохранением оставшейся части хэша params (укажите каждый символ / значение вручную):
# adds the company filter
link_to_unless params[:company]==company, company, jobs_path(:company=>company, :posted=>params[:posted],:sort=>params[:sort],:dir=>params[:dir])
Удаление ключа (исключает символ: company) с сохранением оставшейся части хэша params (укажите каждый символ / значение вручную):
# create a link that removes the company filter
link_to_unless_current 'x', jobs_path(:posted=>params[:posted],:sort=>params[:sort],:dir=>params[:dir])
Я думал просто передать хэш params напрямую, но это исключение:
link_to_unless params[:company]==company, company, jobs_path( params )
Я надеюсь на некоторые альтернативы сушки.