2012-03-03 11 views
0

Railsの2.35 /ルビー1.87Railsクエリ - フィールドで配列インデックスを検索しますか?

私はRailsのクエリを使用している場合:

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

test = Test.all 

は、 "テスト" を表していることの表のような "色" と呼ばれるフィールドを持っていると言います色フィールド== 'オレンジ'の配列インデックスを見つけるために配列を検索できますか?

私はカラーフィールドで「オレンジ」を見つけてそのインデックスのインデックス番号を取得したいので、同じインデックスの別のフィールドの値を取得するために使用できます。 test [3] .color == 'orange'の場合と同様に、私は '3' .nameを取得するために '3'インデックスを使用します。

ありがとうございます!

答えて

0

あなたが探しているものを見つけて名前を直接参照することができない何らかの理由がありますか? Rails 2.3では、次のようなものがあります。

Test.find_by_color('orange').name 

テストの名前がオレンジ色で表示されます。

+0

私は100個の小さなクエリを避けるために、このデータと他のdb型のデータとを照合して、1つのクエリを作成できないようにしています。私は、これを行うために結果をループすることができることを知っています - 「.index」のような速い方法が必要なように思えますが、通常の配列に対してはうまくいかないようです。 – Reno

関連する問題