我想将我的 seeds.rb 文件分成多个部分以便于维护;在 a.rb 中播种所有 A,在 b.rb 中播种 B,等等。单独的文件位于带有 seeds.rb 的 db/目录中。每个文件都包含一堆“A.create”或“B.create”调用,我想从 seeds.rb 调用这些文件。
我试过:
include 'a'
include 'b'
和
load 'a.rb'
load 'b.rb'
在我的 seeds.rb 中,但是当我调用“rake db:seed”时它们似乎没有被处理。这可能更像是一个直接的 ruby 问题,而不是一个 rails 问题,但为了完整起见,我在 Mac 上使用 Ruby 1.9.2 和 Rails 3。
最佳答案
在 ./db/seeds/my_module.rb
中:
module MyModule
puts "In my_module.rb"
# add code here
end
在 ./db/seeds.rb
中:
require File.expand_path('../seeds/my_module', __FILE__) # the ../ just removes `seeds.rb` filename from the path which is given by __FILE__
p "In seeds.rb"
# add code here
关于ruby - 将 seeds.rb 分成多个部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4532834/