Rails无法将Hash转换为Integer

时间:2018-02-19 21:15:50

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

设置current_user

def current_user
    @current_user ||= User.first(conditions: ['auth_token = :token or oauth_token = :token', { token: cookies[:auth_token] }]) if cookies[:auth_token]
  end

铁轨

  

无法将哈希转换为整数

这个方法在rails 3上工作了,现在在rails 5上提出这个问题,有人可以对这个问题有所提示吗?

1 个答案:

答案 0 :(得分:0)

如上所述:Rails的finder语法已经发生了很大的变化。

尝试更多类似的内容:

def current_user
  @current_user ||= User.where('auth_token = :token or oauth_token = :token', token: cookies[:auth_token]).first if cookies[:auth_token].present?
end

(注意:我没有测试过这段代码 - 修复错误是读者的练习)