Rails 关于 rails cookies_serializer 设置项

tiseheaini · 2014年05月28日 · 最后由 tiseheaini 回复于 2014年05月28日 · 2134 次阅读
ActionView::Template::Error (795: unexpected token at { I"session_id : ETI"%e9b435b731d2a6b79b9920e005a34276;'):
     7:   <title><%= @title || "xxxxxxx" %> |xxxxxxx</title>
     8:   <%= stylesheet_link_tag    "application", :media => "all" %>
     9:   <%= javascript_include_tag "application" %>
    10:   <%= csrf_meta_tags %>
    11: </head>
  app/views/layouts/application.html.erb:10:in `_app_views_layouts_application_html_erb__2429748281694412506_70259730928340'
  app/controllers/home_controller.rb:11:in `index'

将 rails 升级到了 4.1.1 部署到服务器后,访问出错,上面这段是我从 log 中摘取出来的。 google 后找到一篇文章 http://akasata.com/articles/309 里面是日文,里面提到 cookies_serializer 改变了,需要将 :json 改为 :hybrid 我看了一下 ruby-china 的代码 https://github.com/ruby-china/ruby-china/blob/master/config/initializers/cookies_serializer.rb#L2 配置并没有改, :json 是 rake rails:update 后的默认项,很想知道为什么 ruby-china 没有出现相同的问题

#1 楼 @saiga 谢谢你给的链接,:hybrid 选项是为了兼容已经运行的项目而写的,而新项目是不需要更改这一个选项的。 不过 ruby-china 是一个运行的项目,升级时应该有一些 cookie 数据,但 ruby-china 并没有更改这一项,请教一下 @huacnlee ,是不是升级时做了一些其他工作,谢谢

需要 登录 后方可回复, 如果你还没有账号请 注册新账号