2

次の配列を持つ構成YAMLファイルがあります:

EMAILS: ['email1@example.com', 'email2@example.com', 'email3@example.com']

次に、このYAML配列内で、「email1@example.com」などの特定の文字列を検索します。

私は次のルビーコードを使用します:

if CONFIG[:EMAILS].include?("email1@example.com")
  return true
else
  return false
end

ただし、これは常にfalseを返します。

アレイPUTSは問題なくできます。CONFIG[:EMAIL]

誰かが私が間違っていることを提案できますか?

4

1 に答える 1

2

シンボルを使用していますが、YAMLハッシュは文字列をキーとして使用しています。これは機能するはずです:

if CONFIG['EMAILS'].include?("email1@example.com")
  return true
else
  return false
end

ちなみに、これは単純に同等です

return CONFIG['EMAILS'].include?("email1@example.com")
于 2012-11-08T16:12:03.583 に答える