Ruby on rails - 无法找出此 AR 查询的语法



我正在尝试运行这个查询:

Result.where('link = #{site}').present?

,其中site为字符串。然而,上面代码的问题是,由于单引号,site不会被插入。

如果我尝试

Result.where("link = #{site}").present?

出现语法错误。

我怎么写这个?

你使用它的第二天就会被黑。有严重的SQL注入问题。

你要做的是:

Result.where(:link => site)

或者如果你需要相等以外的东西,那么这种语法更好:

    Result.where('link <> ?', site)

如果我没记错的话,我认为你可以把引号对开:

Result.where('"link = #{site}"').present?

最新更新