如何理解"rake db:seed"

How to understand "rake db:seed"

我正在使用 Michael Hartl 的 rails 教程。 每当我使用以下

$ bundle exec rake db:migrate:reset 

然后

$ bundle exec rake db:seed

It waits. It doesn't show anything.

当我这样做时:

bundle exec rake test

我明白了

ActiveRecord::PendingMigrationError: Migrations are pending.
To resolve this issue, 
bin/rake db:migrate RAILS_ENV=test

When the above is done-"db:migrate RAILS_ENV=test", tests are clear.

但是 Michael 没有提到关于这种情况的任何事情,有人可以帮忙解释一下吗?

默认情况下,大多数 rake 命令将在传递给命令行的 RAILS_ENV 上下文中转到 运行。如果没有 RAILS_ENV 传递给命令行,它将在 development 上下文中 运行,与 test 上下文分开。有一些例外,例如 rake db:create,它将创建您的 developmenttest 数据库,但 migrate 将在指定环境下工作。