Мне нужен более эффективный способ передачи хэша params по именованному маршруту, включая возможность добавления/удаления/изменения пары ключ/значение.
Добавление ключа (символа компании), сохраняя при этом оставшуюся часть хэша 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])
Удаление ключа (исключает символ компании), сохраняя при этом оставшуюся часть хэша 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 )
Я надеюсь на некоторые альтернативы DRYer.