ruby-on-rails - 将自定义标签添加到 sanitized_allowed_tags 而不替换默认值
问题描述
我想为ActionView::Base.sanitized_allowed_tags
forsanitize()
方法添加自定义标签。
正如文档中所写,我必须在application.rb
下面添加一个配置选项来附加新的自定义标签:
# In config/application.rb
config.action_view.sanitized_allowed_tags = ['strong', 'em', 'a']
但是当我设置一个新标签时:
config.action_view.sanitized_allowed_tags = ["nav"]
["strong", "em", "b", "i", ...]
它仅用 ["nav"]替换默认标签。我发现的唯一解决方法是使用合并的新标签重新声明整个默认数组:
config.action_view.sanitized_allowed_tags = ["nav", "strong", "em", "b", "i", ...]
我也尝试过config.action_view.sanitized_allowed_tags += ["nav"]
,但默认情况下sanitized_allowed_tags
为空。
有没有更好的方法来添加标签而不在应用程序级别重新声明默认值?
我正在使用 Ruby on Rails v5.2
解决方案
您可以在一个after_initialize
块中执行此操作:
config.after_initialize do
ActionView::Base.sanitized_allowed_tags.add 'nav'
end
推荐阅读
- mysql - 从每日报告扩展到过去 7 天
- node.js - 如何从异步/等待函数返回值
- java - 可以将parallel() 与sorted() 一起使用吗?
- vb.net - VB.Net WinForms 切换视图导致滚动条移动/聚焦在错误的位置
- flutter - 如何使用 onFieldSubmitted 单独验证 TextFormField
- azure - 在 Azure Function 中关闭 AwaysOn 以获得免费的应用服务计划?
- opencv - 从 Gstreamer 创建 OpenCv mat 会创建灰色图像,但我想要颜色
- javascript - 关于数据库上的异步与同步查询的问题
- python-3.x - Pyinstaller 在 macos 上抛出错误
- .htaccess - 如何 htaccess mod 将 php 重写为 mp4?