我对 Ruby on Rails 很陌生。不知道seed.rb
的作用是什么文件是,为什么我们使用这个文件,为什么我们需要运行 rake db:seed
命令。谁能用例子解释一下?
最佳答案
引导数据
种子数据的目的是引导您的数据库。例如,如果您有一个用于跟踪用户所在城市和州的 users 表,您可能希望在创建第一个用户之前使用美国州名和缩写为相关表设置种子。
同样,您可能还希望为管理帐户或首次运行应用程序所需的其他数据等内容植入种子。作为一般规则,您不应向seeds.rb 文件添加任何对引导您的数据库或其关系没有必要的内容。
相关的 Rake 任务
seed.rb 文件是存储种子数据的地方,但您需要运行适当的 rake 任务才能实际使用种子数据。使用 rake -T
在您的项目目录中显示有关以下任务的信息:
从 db/seeds.rb
创建数据库,加载模式,并使用种子数据进行初始化
同
rake db:setup
, 但先删除数据库 所以,你可以运行
rake db:seed
随时手动运行seeds.rb 文件。但是,在大多数情况下,您可能希望运行 rake db:setup
或 rake db:reset
而是在您引导应用程序时。
关于ruby-on-rails - seed.rb 文件的作用是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13789143/