如何理解"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
,它将创建您的 development
和 test
数据库,但 migrate
将在指定环境下工作。
我正在使用 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
,它将创建您的 development
和 test
数据库,但 migrate
将在指定环境下工作。