ruby - 将 seeds.rb 分成多个部分?

标签 ruby ruby-on-rails-3 seed

我想将我的 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/

相关文章:

ruby - 创建卡片后无法使用 Trello webhook 获取信息卡片

ruby-on-rails-3 - best_in_place 日期选择器格式

ruby-on-rails - 连接两个字段 activerecord

ruby-on-rails-3 - Rails 验证动态创建的表单

ruby-on-rails - 在 Ruby on Rails 中播种

带有 uuid 的 Laravel 种子

ruby-on-rails - 在 M1 芯片上运行 rails 时出错(Apple Silicon)

ruby - 如何排除无效日期 ruby

ruby-on-rails - (Ruby,Rails) 基于角色的身份验证和用户管理...?

ruby-on-rails - 在seeds.rb 中播种restful_authentication 用户