【问题标题】:comparison of Integer with String failed in rails整数与字符串的比较在rails中失败
【发布时间】:2019-07-09 05:21:05
【问题描述】:

在我的资金控制器中,我定义了这个方法来获取按资金排序的列表,但是我收到了一个错误comparison of Integer with String failed。请帮我弄清楚我哪里出错了。 以下是JSON 记录示例。

{
  "Name":"Tony",
  "xyz":0,
  "money":"7"
}


  def sort_money
    require 'json'
    require 'csv'
    f = File.open("app/assets/javascripts/sample.json")
    @mylist = JSON.parse(f.read).sort_by{ |v| v["money"] }
  end

【问题讨论】:

  • 您的 json 文件包含参数 money 的整数和字符串。你能检查一下json文件吗?
  • @RahulSharma 是的,它是正确的,它包含整数和字符串
  • 使用to_i 将字符串转换为整数。 @mylist = JSON.parse(f.read).sort_by{ |v| v["money"].to_i }
  • @RahulSharma 成功了,谢谢
  • @RahulSharma 能否请您添加一个答案,以免留下未回答的问题?

标签: ruby-on-rails json sorting ruby-on-rails-5


【解决方案1】:

您的 json 文件包含参数 money 的整数和字符串。使用to_i 将字符串转换为整数。像这样:

@mylist = JSON.parse(f.read).sort_by{ |v| v["money"].to_i }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-01-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多