在Rails 3.2.4中冻结的数组

时间:2012-06-12 03:01:43

标签: ruby-on-rails ruby-on-rails-3

我最近将rails应用程序从3.0.4更新到3.2.4,我有一个奇怪的问题。似乎我的应用程序中的每个数组都已冻结。例如,如果一个数组从数据库中获取一组文章,那么该数组将在第一次调用该方法时被实例化,并且不会更改。如果数组中的某个文章被删除,它仍然会在数组中引用它。它只会在我重新启动服务器时更改。但是,当我调用array.frozen时?它返回false。当我部署到heroku时,我收到此错误:

!!处理请求时出现意外错误:无法修改冻结数组

有关可能导致此问题的建议吗?我更新了另一个应用程序并没有遇到这个问题。

1 个答案:

答案 0 :(得分:4)

好吧,我让它运转了。我跑了heroku run script/rails console,它给了我一个我还没有看到的新错误。事实证明,我的环境/ production.rb文件中有一行随机代码,必须是偶然复制和粘贴的。删除后,它清除了冻结的阵列问题。在一些不相关的宝石问题之后,我能够让我的网站重新上线。所以我的建议是检查你的production.rb文件并运行heroku控制台。