如何在Rails表单提交中保留引号?

时间:2010-07-14 04:49:51

标签: ruby-on-rails webforms

如何保留原始报价?例如,在提交带引号的搜索字符串时需要引号。

  • 搜索表单example1:ruby“new york”
  • 从example2搜索:“new york”

结果参数[:q]:

  • 例如1:“ruby \”new york \“”
  • 例如2:“new york”

请注意,如果引用整个字符串,Rails会抛弃引号,如example2中所示。但是在example1中,引号被保留,因为它们散布在字符串中。我需要example2来保留引号,所以我将params [:q]看作“\”new york \“”。

2 个答案:

答案 0 :(得分:0)

您是在谈论使用"test me"而不是"\"test me"\"进行搜索的SQL注入。

使用以下搜索

@users = User.find(:all, :conditions=>["(username like :text)",{:text=>"%#{params[:search_text]}%"}]) 

答案 1 :(得分:0)

这是一个很久以来一直被修复的Rails错误。