ruby 1.8.7和1.9.3之间的区别是什么导致Rails中的session_store语法错误?

时间:2012-09-22 23:28:34

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

我正在关注Mike Hartl的rails教程并使用rails 3.2.8创建了一个简单的应用程序。

" rails console"命令爆炸;一点点修修补补显示我的红宝石环境神秘地恢复了红宝石1.8.7。 (为什么还没有理解。)错误信息:

... path ... / lib / active_support / dependencies.rb:245 in' load':... path ... / demoapp / config / initializers / sessions_store.rb:3:语法错误,意外':',期待$ end(SyntaxError)

快速切换回ruby 1.9.3p194(使用RVM)似乎已经成功了。我的开发平台是Ubuntu 12.04。

像往常一样,Rails错误消息堆栈不太有用。导致此错误的1.8.7和1.9.3之间有什么区别?

1 个答案:

答案 0 :(得分:2)

在1.8中不起作用的行是

 Xxx::Application.config.session_store :cookie_store, key: '_xxx_session'

它使用新的哈希表示法。要使其适用于1.8,请将其更改为

 Xxx::Application.config.session_store :cookie_store, :key => '_xxx_session'