我确实将我的应用程序更新到Rails 4.1.10,它在我的暂存环境中运行良好。
现在,只要我将我的应用程序部署到生产环境,我就会在其中一个视图中收到以下致命错误:
F, [2015-03-26T18:12:21.159599 #4741] FATAL -- :
ActionView::Template::Error (795: unexpected token at [[iI""$2a$10$2BUwvWEvQzm404VPpY71BO:ET'):
5: .row
6: .col-xs-8
7: h1 = search_highlight(@programme.title, params)
8: - if current_admin_user
9: i.fa.fa-edit
10: '
11: = link_to t('edit'), (admin_programme_path(@programme) + '/edit'), target: '_blank'
app/views/programmes/show.html.slim:8:in `_app_views_programmes_show_html_slim__2487450803659794271_70344829653360'
我得到的提示非常具有误导性,我似乎无法弄清楚这里有什么问题。
795: unexpected token at [[iI""$2a$10$2BUwvWEvQzm404VPpY71BO:ET'
答案 0 :(得分:0)
事实证明,问题与苗条根本没有直接关系。当我访问current_admin_user
时,来自客户端的cookie被解析,因为我将我的Rails应用程序从4.0升级到4.1,所以cookie以旧格式存储,Rails 4.1的默认值为:json。
因此,在:json
中将:hybrid
的{{1}}更改为cookies_serializer.rb
可以解决问题
Rails.application.config.action_dispatch.cookies_serializer = :hybrid