是否可以将html/erb代码存储在数据库中



我希望像创建一个非常简单的博客一样有效地创建一个应用程序,每隔几天就会添加另一篇文章。为了控制文章的外观,我想直接用html来写,这样图片、链接等就可以放在合适的地方,并根据需要进行格式化。然而,将这些文章存储在数据库中似乎会使维护更加容易,并提供额外的搜索功能。以这种方式将这样的html/erb代码存储在数据库中是否明智?如果没有,有什么替代方案?

实现这一点的标准方法是使用标记库(如redcloth)。你甚至在SO上也使用了类似的东西——如果你阅读帮助链接,它看起来像是降价。内容当然可以放在数据库中。它可以用html和erb来,但不经常这样做的原因是安全。

如果你是唯一一个使用它的人,这可能不是问题,但如果你允许其他人插入数据,你可以用html进行XSS攻击,如果你允许原始erb,甚至可以利用代码。标记语言的存在是为了限制所允许的标记集,并消除脚本攻击的能力。

另请参阅:更好的ruby markdown解释器?

更新:多么好的时机,今天发布了一个关于这一点的railscast:http://railscasts.com/episodes/272-markdown-with-redcarpet

相关内容

  • 没有找到相关文章

最新更新