【问题标题】:Cannot convert data from cookies无法从 cookie 转换数据
【发布时间】:2019-11-25 02:39:23
【问题描述】:

我想创建一种方法来计算网站上用户操作的数量。 我有代码:

    def actions_counter
      if cookies[:"actions"] != nil
        cookies[:"actions"].to_i += 1
      else
        cookies[:"actions"] = 0
      end
    end

但由于某种原因,这不起作用。

NoMethodError in PostsController#show
undefined method `to_i=' for "1":String Did you mean? to_i to_r to_f to_s to_d to_c

【问题讨论】:

    标签: ruby-on-rails ruby cookies


    【解决方案1】:

    只需将您的方法更改为

    def actions_counter
      if cookies[:actions]
        cookies[:actions] = cookies[:actions].to_i + 1
      else
        cookies[:actions] = 0
      end
    end
    

    问题在于 Ruby 将 cookies[:"actions"].to_i += 1 理解为

    cookies[:"actions"].to_i = cookies[:"actions"].to_i + 1
            # and this ^^^^^^^^ doesn't make sense
    

    【讨论】:

      猜你喜欢
      • 2016-11-10
      • 1970-01-01
      • 2017-07-05
      • 1970-01-01
      • 2019-11-22
      • 1970-01-01
      • 2012-06-17
      • 2018-08-25
      • 1970-01-01
      相关资源
      最近更新 更多