javascript - 什么会导致 Sprockets::CachedEnvironment 错误?

标签 javascript ruby-on-rails-4 tinymce erb centos6

我的 RoR 应用程序因以下错误而失败:

ActionView::Template::Error (undefined method `attributes_for' for Sprockets::CachedEnvironment:0x00000005baf3d8

据我发现,当 html.erb 模板中的 javascript 渲染时,会发生此错误。我还注意到,在所有发生这种情况的模板中都存在tinyMCE初始化命令。

我想,这是特定于环境的,因为在我的开发机器上它工作正常,在生产服务器上它也工作正常。当我决定安装第二个生产服务器用于测试目的时,我开始收到此消息。我安装了 CentOS 6 + rvm + ruby​​ 2.2.0(与第一个生产服务器相同)。也许我错过了安装某些东西?

最佳答案

由于问题与 tinymcesprockets 有关,我猜测您正在使用 tinymce-rails GEM。

tinymce-rails GEM 无法与 sprockets >= 3 正常工作。它使用了一些在版本 3 中删除的 API。

如果您仍想使用tinymce-rails GEM,请将sprockets锁定到~> 2。这解决了我的问题。

完美的解决方案是对 tinymce-rails 发出拉取请求,使其与最新的 sprockets 配合使用,但这完全是另一回事了。

关于javascript - 什么会导致 Sprockets::CachedEnvironment 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29991316/

相关文章:

javascript - JS 下划线 : array of dicts in pairs

javascript - Highcharts:是否可以显示类似于饼图图例的旭日图例?

javascript - 如何在页面更改时运行 CoffeeScript ?

composer-php - 如何用composer管理tinymce语言包

javascript - wp_editor(),如何使用 jQuery 获取内容

javascript - 如何在 Ember 中以 POST 请求发送文件?现在只发送文件名

javascript - 我如何使用 `Q.set` ?

postgresql - 如何分组/选择 JSON 类型列(PG::UndefinedFunction: ERROR: could not identify an equality operator for type json)

mysql - heroku rails 应用程序 :test RDS mysql as suggested by Heroku June 2016 article?

java - 在 Vaadin 7 项目中使用 TinyMCEEditor Wrapper 时如何更改 TinyMCETextField 中的默认字体大小?