11

メンテナンスを容易にするために、seeds.rb ファイルを複数のセクションに分割したいと考えています。すべての A を a.rb にシードし、B を b.rb にシードするなど。個別のファイルは、seeds.rb とともに db/ ディレクトリにあります。各ファイルは一連の「A.create」または「B.create」呼び出しで構成されており、seed.rb からこれらのファイルを呼び出したいと考えています。

私はもう試した:

include 'a'
include 'b'

load 'a.rb'
load 'b.rb' 

私のseeds.rbでは、「rake db:seed」を呼び出しても処理されないようです。これはおそらく、Rails の質問というよりも Ruby に関する直接的な質問ですが、完全を期すために、Mac で Ruby 1.9.2 と Rails 3 を使用しています。

4

2 に答える 2

20

./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
于 2010-12-26T05:38:02.463 に答える