Ruby on rails 3 通过删除repition/clients设置Rails查询字符串的格式?id[]=1&;ids[]=2&;ids[]=3

Ruby on rails 3 通过删除repition/clients设置Rails查询字符串的格式?id[]=1&;ids[]=2&;ids[]=3,ruby-on-rails-3,ruby-on-rails-3.1,Ruby On Rails 3,Ruby On Rails 3.1,在Rails3.1中,您将如何使查询字符串看起来更干净、更可读 例如,查询字符串中具有多个参数的键的Rails默认值如下所示: /客户端?ID[]=1&ID[]=2&ID[]=3 我希望它看起来像: /客户机?ID=1,2,3 甚至 /客户机?ID=1 | 2 | 3 ID由一系列链接控制,这些链接充当过滤器,用于选择一个或多个选项对某些搜索结果进行过滤 最好的方法是什么?您可以自动完成的唯一方法是在机架或导轨上安装MonkeyPatch。你应该避免这样做,因为这会导致更多的问题,而不是解决问题

在Rails3.1中,您将如何使查询字符串看起来更干净、更可读

例如,查询字符串中具有多个参数的键的Rails默认值如下所示: /客户端?ID[]=1&ID[]=2&ID[]=3

我希望它看起来像: /客户机?ID=1,2,3
甚至
/客户机?ID=1 | 2 | 3

ID由一系列链接控制,这些链接充当过滤器,用于选择一个或多个选项对某些搜索结果进行过滤


最好的方法是什么?

您可以自动完成的唯一方法是在机架或导轨上安装MonkeyPatch。你应该避免这样做,因为这会导致更多的问题,而不是解决问题

如果有一个字符串嵌入了
|
,则可能会使其错误地转换数据。或者,如果您只有一个条目,例如
ids=1
,它将不知道如何将其转换为内部只有
1
的数组


当需要传递需要清理的数组时,最好手动执行此操作。在这种情况下,您只需在将其传递给路由器方法时调用
ids.join(“,”
)和
params[:ids].split(“,”
)即可将阵列恢复。

自动执行此操作的唯一方法是在机架或导轨中对某些内容进行MonkeyPatch。你应该避免这样做,因为这会导致更多的问题,而不是解决问题

如果有一个字符串嵌入了
|
,则可能会使其错误地转换数据。或者,如果您只有一个条目,例如
ids=1
,它将不知道如何将其转换为内部只有
1
的数组

当需要传递需要清理的数组时,最好手动执行此操作。在这种情况下,您只需在将其传递给路由器方法时调用
ids.join(“,”
)和
params[:ids].split(“,”
)即可获得一个数组