【发布时间】:2012-02-08 00:39:28
【问题描述】:
我目前正在为我们的项目 openSNP.org 实施分布式注释系统标准,但是,我遇到了查询字符串的问题
该标准规定了用户如何使用查询字符串 /features?segment=1:1,999;segment=2:100,1000 访问基因组的多个区域(或任何其他生物数据源),其中前面的数字冒号是染色体,另外两个数字是染色体上的开始和结束位置。
允许使用无限的 segment=X:a,b 字符串,以便用户只需使用一个查询即可查看不同的位置和染色体。
Rails 的问题是这个查询字符串不能与 params-array 一起使用——毕竟,我总是有相同的键,最后一个键总是覆盖前一个键,所以最后,我的参数数组中只有“segment”=>“2:100,1000”,“segment”=>“1:1,999”被覆盖。
我曾想过在查询字符串被传递到控制器之前使用 JavaScript 来更改它,但使用的视图是基本的 XML,在这种情况下实现 JavaScript 似乎有点矫枉过正。有什么方法可以在创建 params-array 之前访问 Rails 中的查询字符串,以便我可以简单地用某个计数器替换所有“段”,或者只是踢出所有“段”并保留坐标?
【问题讨论】:
标签: ruby-on-rails ruby query-string