0

我正在制作一个 Rails 应用程序,但我对剥离标签的文本有疑问。strip_tags在视图显示用户提交的文本的任何地方都使用该方法是否正常?还是应该在模型中验证所有输入,然后您不需要strip_tags视图中的方法?将有很多地方可以添加此内容,因此我想知道我是否正确。

4

2 回答 2

2

如果您使用的是 Rails 3+,它会自动转义 Ruby 视图中输出的所有内容。无事可做,默认情况下你是安全的。

如果您使用的是 Rails 2.3 及以下版本,请使用<%= h some_var %>转义可能有害的变量。

您也可以使用rails_xss带有 Rails 2.3 的 gem 来添加 Rails 3 的保护

于 2012-08-06T16:37:57.070 回答
0

我会在输入/保存时删除所有标签,然后您以后不必担心。如果您确实想实际维护标签,那么请考虑使用Presenter设计模式,让您的所有模型数据输出都通过它的呈现器,此时您可以在一个地方剥离标签。

于 2012-08-06T16:37:47.497 回答