Psych::DisabledClass在更新rails ActiveModel条目时



这有点奇怪,我正试图通过rails_admin控制台更新ActiveModel条目,而更新模型上的任何属性都会引发错误Psych::DisallowedClass。在我看来,只有当模型具有一些序列化字段时才会引发错误。我不确定Psych库是如何进入序列化场景的,所以在这里寻找一些指针。

谢谢!

从rails 5.2.5更新到5.2.8后,我遇到了同样的问题。

我通过添加解决了这个问题

config.active_record.yaml_column_permitted_classes = [Symbol]

在我的CCD_ 5中。

从gem版本psyc4.0开始,有严格的方法来解析YAML文件。因此,要么使用psyc的旧版本,要么将permitted_classes参数传递给#load方法以允许该类,这是的例外:

YAML.load(txt, permitted_classes: [Gem::Specification, Symbol])

该代码是用特定的非标准类加载YAML文档所必需的。因为加载器阻止用户加载一些不安全的类。更多信息可以从YAML的来源中推断出来。

相关内容

  • 没有找到相关文章

最新更新