2014-03-29 50 views
1

我不得不这样的link_to PARAMS获取

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

其中创建链接???一些参数。

我如何可以重定向使用参数来hiring_candidates_path这样

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

继格尔登的帖子,你可能希望在你的路由(一种叫bound parameters)来定义PARAMS:

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

这将允许您加载与“裸”的数据(如/candidates/1)的URL。显然,这将不适合你的问题直接,但它会在未来


您可能也想看看JSON query constructs欣赏JSON路径如何工作一定的帮助:

url/?param1=xxx&param2=xxx