将数组参数传递给路径

时间:2013-08-28 11:06:24

标签: ruby-on-rails ruby-on-rails-3

我需要将参数传递给路径,以便路径如下所示:

http://localhost/submission_app/submissions?search_submission_type=ISH&submission_status_arr[]=51

我试过

submissions_path(:search_submission_type => "ISH", :submission_status_arr[] => 51 )

但在我的视图页面上收到wrong number of arguments (0 for 1..2)错误消息。

然后我尝试了:

submissions_path("search_submission_type=ISH&submission_status_arr[]=51")

但是这个给了我以下网址(注意点之前的点而不是& amp)

http://localhost/submission_app/submissions.search_submission_type=ISH&submission_status_arr[]=51

我如何传递参数以便获得正确的网址格式?

非常感谢您的建议。谢谢

3 个答案:

答案 0 :(得分:4)

Rails使用parameter[]=value表示parameter应被视为数组。

您只需要将一个数组传递给路径助手,以获取rails为您生成路径。

submissions_path(:search_submission_type => "ISH", :submission_status_arr => [51] )

答案 1 :(得分:2)

正确的语法是

submissions_path(:search_submission_type => "ISH", :submission_status_arr => [51] )

答案 2 :(得分:1)

试试这个:

submissions_path(:search_submission_type => "ISH", "submission_status_arr[]" => 51)