開発目的でデータを処理するためにデータベースにデータを入力する Rake タスクを作成しています。(ただし、テストではFactoryGirlを使用しているため、それについては話していません。)
たとえば、デモ データベースに 2 つのサンプル組織があり、次のように定義したとします。
sample_organizations = [ '37 Signals', 'Fog Creek']
そして、次のようにDBにデータを入力する小さな方法:
def create_organizations
sample_organization.each { |item|
Organization.first_or_create(
name: item,
time_zone: 'Central'
)
}
end
したがって、2 か月後に 3 番目の組織を追加したい場合は、コードの先頭に移動して、その配列に別の組織名を手動で入力するだけです。メソッドは引き続き機能し、それを作成します。
ここで質問を開始します。入力するテーブルが他にもあります。たとえば、集計テーブルは組織テーブルからぶら下がっているため、各組織は多くの集計を持つことができるためorganization_id foreign key
、集計テーブルにも入力する必要があります。それでも、上記の方法create_summaries
と同様のことを行うような方法が必要ですcreate_organization
が、今回は Summaries テーブルに入力します。トリッキーな部分は、テーブルの organization_id フィールドに入力することです。
これにどのようにアプローチすればよいですか?Summaries テーブルに次のフィールドがあるとします。 id (auto generate by Rails) , organization_id, name, member_count