-1

作業中のアプリの API キーを含む定数を作成しました。Rails コンソールでは動作していますが、テストでこれを動作させるのに苦労しています。Bing を使用する必要があるため、次のように API を追加しました。

# config/bing.yml
development:
  secret: 1234

test:
  secret: 5678

production:
  secret: abcd

# config/initializers/bing.rb
BING_CONFIG = YAML.load_file("#{::Rails.root}/config/bing.yml")[::Rails.env]

BING_CONFIGそれがrspecに確実にロードされるようにするにはどうすればよいですか? 現在、Rails コンソールで正常に動作し、正常にロードされていますが、spec を実行すると、次のエラーが表示されます。

uninitialized constant SearchEngine::BING_CONFIG
4

2 に答える 2

0

私の理解では、このような初期化を で構成する限りconfig/initializers、rspec の実行でもロードする必要があります。しかし、それはまだ機能していません...

エラー出力SearchEngineに名前が表示されているので、初期化子をモジュール内にラップしたと思います。

その場合、SearchEngine上記の割り当ての前にモジュール名を導入する必要があります。しかし、Rails のオートローダを満足させるために、モジュール名を導入するときは、名前空間階層に従ってファイル (およびクラス/モジュール名) を命名する Rails の方法に従う必要があります。そして、それはどのようSearchEngineに定義されているかによって異なります。モジュール名をどのように定義しますか?

于 2013-09-05T06:40:01.120 に答える
0
于 2013-09-05T06:34:13.347 に答える