当前位置: 首页 > 知识库问答 >
问题:

没有符号到整数轨道的隐式转换5.2.2.1

郎睿
2023-03-14

我尝试使用改造2发布到rails来过滤来自地方params[: filter]的一些数据是:

[
    {
        "id"=>2,
        "name"=>"Cafe",
        "service_code"=>0
    },
    {
        "id"=>3,
        "name"=>"restaurant",
        "service_code"=>0
    }
]

所以我想用一个简单的参数[:filter][:id]获取id,但它没有返回符号到整数的隐式转换,感谢您的帮助,如果它看起来是一个简单的问题,很抱歉

共有1个答案

宓昂雄
2023-03-14

没有符号到整数的隐式转换(类型错误)

在这种情况下会出现这个错误,因为你试图访问一个数组中的元素,因为它是一个散列。Ruby试图将您作为参数传递的符号转换为< code>[]方法,因为接收方是一个数组,数组可以通过它们的索引访问它们的元素。

简而言之,您有一个哈希数组,如果您需要其中一个哈希的id,请过滤元素,直到获得它,然后在那里您可以使用['id']

[{ "id"=>2, "name"=>"Cafe", "service_code"=>0 },
 { "id"=>3, "name"=>"restaurant", "service_code"=>0 }][0]['id']
# 2
 类似资料:
  • 我试图创建AWS安全组,但我得到的错误在 我在遵循这个文档。知道如何解决这个错误吗? 错误:

  • 我正在尝试将文件导入Excel,但是当我尝试使用相关数据创建记录时,它会向我显示以下错误: 在此行中: 这是我用来导入的列表控制器和方法: 我的方法导入到列表控制器中: 这是我的“deta”控制器:

  • 我在尝试更改哈希值时遇到了一个奇怪的问题。我有以下设置: 当我执行此代码时,我得到:“TypeError:没有将符号隐式转换为整数”,尽管 item[:company_name] 的输出是预期的字符串。我做错了什么?

  • 我正在接收 无符号到整数的隐式转换 使用以下代码: 但是当我将方法的 路由到< code > Admin::questions controller 的< code>create方法,为什么它不起作用?我是rails和命名空间的新手,所以我可能忽略了一些显而易见的东西。 编辑: 问题控制器的命名空间在admin下。

  • 搞砸 使用的代码 我无法获得以下输出: 错误信息: 类型错误没有将符号隐式转换为整数 在多条记录的情况下,它可以正常工作 使用的代码

  • 尝试将 URL 中包含的参数转换为整数,以便在控制器中对其进行操作 - URL 的格式类似于 http://localhost:3000/charges?data=149 charges_controller.rb 如下所示: 我在better_errors屏幕中看到的参数已经检测到“数据”量: 在live shell中,如果我执行params[: data],则会出现更好的错误。to_i它返回1