我正在使用Rails-2应用程序。我有一个表单,它提交12个参数。我想为我的所有参数应用CGI::escapeHTML。我知道我不能像下面这样使用
转义params(Params)。因为这里params以Hash的形式出现。Rails中任何可用的方法都可以将其应用于、有效方法。在这方面请帮忙。提前谢谢。
我遵循了下面的URL指南,但我无法成功。
http://www.ruby-doc.org/stdlib-1.8.7/libdoc/cgi/rdoc/CGI.html
发布于 2014-05-29 13:01:25
您可以迭代转义HTML的params散列。
params.each do |key, value|
params[key] = CGI::escapeHTML(value)
end您可能只想选择实际要这样做的属性,尽管params散列也包含控制器和操作之类的内容。例如:
params[:model_name].each do |key, value|
params[:model_name][key] = CGI::escapeHTML(value)
end但是,从您最近的评论来看,最好是在模型中这样做,而不是在setter之上。
def attribute_name=(value)
self.attribute_name = CGI::escapeHTML(value)
endhttps://stackoverflow.com/questions/23933592
复制相似问题