0

Railsで、足場を作成してfoo実行するとrake db:migrate

app/models/foo.rb

創造された。だから私が行くなら

script/console   (or rails console for Rails 3)

とタイプ

$".grep /foo/i

それは空です。 $"ロードされたファイルです。したがって、foo.rbはまだロードされていません。

今、私はを実行しFoo.all、foo.rbがロードされるはずです。

しかし、を繰り返すとgrep、まだ空の配列が表示されています-それはなぜですか?

(一方、私はgrepを実行でき、pp何も表示されませんが、私require 'pp'の後、grepはそれを表示します)

4

1 に答える 1

2

使用する環境によって異なります。

開発時には、必要なときにのみ必要でロードされ、毎回リロードされます。本番モードでは、require と load は 1 回だけです。アプリケーションの開始時にロードされます。アプリ/モデルのすべてのモデルが読み込まれます。

それを行うための構成は次のとおりです。config.cache_classes = true

于 2010-10-20T11:49:45.630 に答える