我正在将Rails应用程序从4.1.16升级到5.2.3。
我希望将散列转换为SQL条件字符串(从{ :name => "foo'bar", :group_id => 4 }到name='foobar' and group_id =4)。对于散列条件,sanitize_sql_for_conditions似乎已经不推荐了。
ActiveRecord::Base.sanitize_sql_for_conditions({ :name => "foo'bar", :group_id => 4 })返回{:name=>"foobar", :group_id=>4}
如何将散列转换为SQL条件?
发布于 2022-06-08 05:45:56
没有从参数哈希生成SQL查询的内置方法,但您可以轻松地使用字符串文本构建它,在您的示例中如下所示:
> h = { :name => "foo'bar", :group_id => 4 }
> h.map{ |el| "#{el.first}=#{el.last}" }.join(" AND ")
=> "name=foo'bar AND group_id=4"https://stackoverflow.com/questions/56923525
复制相似问题