【问题标题】:Rails query - search a field for an Array index?Rails 查询 - 在字段中搜索数组索引?
【发布时间】:2012-03-03 15:22:20
【问题描述】:

Rails 2.35 / Ruby 1.87

如果我有 Rails 查询:

test = Test.all

假设“test”代表的表格有一个名为“color”的字段,如:

test[0].color = 'blue'
test[1].color = 'red'

如何搜索数组以找出(例如)颜色字段 == 'orange' 的数组索引?

基本上我只想在颜色字段中找到“橙色”并获取该索引的索引#,以便我可以使用它来获取同一索引处另一个字段的值。就像如果 test[3].color == 'orange' 那么我想要那个 '3' 索引来获取 test[3].name。

谢谢!

【问题讨论】:

    标签: ruby-on-rails


    【解决方案1】:

    是否有某些原因您无法查询以找到您正在寻找的确切内容,然后直接引用该名称?在 Rails 2.3 中,是这样的:

    Test.find_by_color('orange').name
    

    你会得到橙色的测试名称。

    【讨论】:

    • 只是因为我试图避免一百个小查询将这些数据与来自另一个数据库类型的数据进行匹配,而我无法创建单个查询。我知道我可以循环遍历结果来做到这一点——似乎应该有像“.index”这样的快速方法,但它似乎不像普通数组那样工作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多