我正在向我的 Rails 站点添加全文搜索,并允许用户在搜索输入框中输入双引号。问题是双引号似乎被 Mongrel 过滤掉了,所以我从来没有在 params 哈希值中收到这些引号。我该如何防止这种情况发生?我正在运行 Rails 2.3.8。
[编辑:添加分析数据]
在 Firebug 中,我看到 post 参数用引号正确发布:
search_criteria "great post"
然而,在开发日志中,引号消失了:
处理 PostsController#search (for 127.0.0.1 at 2010-06-18 17:28:45) [POST] 参数:{"search_criteria"=>"great post", "action"=>"search", "authenticity_token"= >"xUaOc1IAyjQmKn1NGqBpPVaTBmD4ayPq/lUJsqJGCxY=", "控制器"=>"帖子"}
当我在控制器中记录 params[:search_criteria] 的内容和大小时,我得到:
search criteria = great post
search criteria size = 10
[编辑:新发现] 当引用的字符串尾随或前面有另一个字符(例如空格)时,不会发生上述问题。