繁体   English   中英

如何从Rails 2.3.8应用程序的Ruby 1.8.7升级到Ruby 1.9.2?

[英]How do I upgrade from Ruby 1.8.7 to Ruby 1.9.2 for Rails 2.3.8 app?

我到处搜索,找不到任何有相同问题的人。

我正在测试使用rvm和nginx + passenger(当前在生产环境中运行1.8.7)使用Ruby 1.9.2升级运行Rails 2.3.8的大型Rails应用程序。

我正在使用mysql2 gem,而我的数据库使用UTF-8编码。 当我登录到应用程序(标准restful-auth)时,数据库查找会找到匹配项,但是当控制器尝试在User模型上保存属性更改时,它会从validates_length_of中引发验证错误。

我向ActiveRecord添加了一些调试输出,看起来它认为我的所有数据库记录的字符串值都是空的(在日志中显示为“ []” ...)

我在脚本/控制台中看到了相同的行为:User.first.login =>“ []”,但是在切换到mysql2 gem(并更新database.yml适配器值)后,它已得到修复。

为什么控制台可以工作,但不能通过网站工作? ActionController / ActiveSupport错误??

澄清:这是一个稳定的应用程序,在1.8.7中使用100多年的规范已启用1年以上。

解决方案是禁用xss_terminate插件。

它很旧,但是对我来说处理各种用户输入类型和角色很有用。显然,钩子方法接近ActiveRecord操作,在Ruby 1.9中有用,它处理字符串。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM