"rake db:seed"和"rake db:fixtures:load"有什么区别?

13

我刚开始接触Ruby和Rails,并且对某些事情很好奇。

在我看的两个不同的教程中,它们使用了不同的方法来向数据库中填充基本测试信息。

一个使用"rake db:seed"从样例数据文本文件中提取数据。

另一个则使用"rake db:fixtures:load"。

对我来说,它们似乎做的是完全一样的事情。

它们确实是一样的吗?还是说我漏掉了什么?(很有可能)

1个回答

22

rake db:seed 命令可以将在db/seeds.rb文件中定义的数据加载到数据库中。一般用于开发和生产环境下的数据库。这些数据是应用程序启动所需的常规数据。有关更多信息,请参见此处

rake db:fixtures:load命令可以将测试样例数据加载到测试数据库中。这些数据仅用于测试,可以将其看作是示例数据


1
实际上是 rake db:seed(末尾没有's')。 - RealMan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接