2014-03-29 4 views
1

Я должен создать ссылку, как этотlink_to PARAMS Получить

= link_to vacancy.new_candidates_count, hiring_candidates_path(???) 

где ??? некоторые параметры.

Как я могу перенаправить hiring_candidates_path с Params как этот

Parameters: {"grid_filter"=>{"vacancies"=>["1"]} 

На странице hiring_candidates можно использовать фильтры и я могу видеть в терминале все Params, которые я посылаю:

Started GET "/hiring/candidates.json?grid_filter%5Bgroup%5D=&grid__search=false&grid_nd=1396122997602&grid_rows=30&grid_page=1&grid_sidx=id&grid_sord=desc&grid_filter%5Bvacancies%5D%5B%5D=1" for 127.0.0.1 at 2014-03-29 21:56:37 +0200 
Processing by Hiring::CandidatesController#index as JSON 
    Parameters: {"grid_filter"=>{"group"=>"", "vacancies"=>["1"]}, "grid__search"=>"false", "grid_nd"=>"1396122997602", "grid_rows"=>"30", "grid_page"=>"1", "grid_sidx"=>"id", "grid_sord"=>"desc"} 

В ожидании вашего Помощь)

ответ

2

Вы можете передать их как query params:

= link_to vacancy.new_candidates_count, hiring_candidates_path("grid_filter"=>{"vacancies"=>["1"]}) 

После нажатия, эта ссылка будет создать URL с параметрами запроса, как

/hiring/candidates.json?grid_filter%5Bvacancies%5D%5B%5D=1

0

В дополнении к сообщению Kirti, вы может желания определить Params в маршрутах (что-то называется bound parameters):

#config/routes.rb 
resources :hiring do 
    collection do 
     get "candidates(/:vacancies)", action: :candidates 
    end 
end 

Это позволит вам загрузить URL с «голыми» данными (например, /candidates/1). Очевидно, что это не будет вписываться в ваш вопрос непосредственно, но это, безусловно, поможет в будущем


Вы также можете захотеть взглянуть на JSON query constructs, чтобы оценить, как JSON пути работы:

url/?param1=xxx&param2=xxx 
Смежные вопросы