【发布时间】:2013-02-16 14:26:55
【问题描述】:
我正在编写一个 Rake 任务来填充数据库以用于开发目的,以便处理一些数据。 (但在测试中我使用的是 FactoryGirl,所以不讨论这个。)
假设我的演示数据库中有两个示例组织,所以我这样定义它们:
sample_organizations = [ '37 Signals', 'Fog Creek']
然后是一个像这样填充数据库的小方法:
def create_organizations
sample_organization.each { |item|
Organization.first_or_create(
name: item,
time_zone: 'Central'
)
}
end
所以好在两个月后,如果我想添加第三个组织,我只需转到我的代码顶部并在该数组中手动输入另一个组织名称。方法仍然有效并创建它。
现在开始问题:我还有更多表格要填充!例如Summaries表挂在Organization表之外,所以每个组织可以有很多Summaries,所以我们在Summary表中也有一个organization_id foreign key要填写。
但是我仍然想要一个像create_summaries 这样的方法,它的作用类似于上面的create_organization 方法,但是这次填写Summaries 表,棘手的部分是填写表的organization_id 字段。
我应该如何处理这个问题?
假设摘要表具有以下字段:id (auto generate by Rails) , organization_id, name, member_count
【问题讨论】:
标签: ruby-on-rails ruby ruby-on-rails-3.2