0

このスタックの質問を既に見ました。その時点で、回答のすべてのリンクを見ました。

カスタム レーキ タスクを作成しました。コードは次のようになります。

task :seeding do
    op_a = CoverageDetail.create(option: 'a', privacy_and_website_media: 250000.00, privacy_breach_service: 20000,
                    legal_forensic_cost: 25000.00, call_center_service: 'inc', deductible: 5000.00,
                    credit_monitoring_individuals: 20000, fraud_resolution_service: 5000, regulatory_defense: 100000.00,
                    pci_fines_and_costs: 50000.00, crisis_management_and_pr: 50000.00, foreign_notification: 10000.00)

    op_b = CoverageDetail.create(option: 'b', privacy_and_website_media: 500000.00, privacy_breach_service: 25000,
                            legal_forensic_cost: 50000.00, call_center_service: 'inc', deductible: 5000.00,
                            credit_monitoring_individuals: 25000, fraud_resolution_service: 5000, regulatory_defense: 250000.00,
                            pci_fines_and_costs: 50000.00, crisis_management_and_pr: 50000.00, foreign_notification: 10000.00)

    op_c = CoverageDetail.create(option: 'c', privacy_and_website_media: 1000000.00, privacy_breach_service: 50000,
                            legal_forensic_cost: 100000.00, call_center_service: 'inc', deductible: 5000.00,
                            credit_monitoring_individuals: 50000, fraud_resolution_service: 5000, regulatory_defense: 500000.00,
                            pci_fines_and_costs: 50000.00, crisis_management_and_pr: 50000.00, foreign_notification: 10000.00)

    op_a.save!
    op_b.save!
    op_c.save!
end

私はcoverage_detailsというテーブルを持っています私はcoverage_detail.rbというモデルを持っています私はcoverage_details_controller.rbというコントローラーを持っています。モデル内のクラス名は CoverageDetail です。

問題:なぜ私は取得していuninitialized constant CoverageDetailますか?

これは、既存のアプリで新しいテーブルをシードするためのカスタム rake タスクを作成しようとするのは初めてです。または、この情報を db:seed ファイルに追加するだけです。

私は何が欠けていますか?

4

1 に答える 1

5

環境を使用してレール環境を与える

task :seeding => :environment do
    op_a = CoverageDetail.create(option: 'a', privacy_and_website_media: 250000.00, privacy_breach_service: 20000,
                    legal_forensic_cost: 25000.00, call_center_service: 'inc', deductible: 5000.00,
                    credit_monitoring_individuals: 20000, fraud_resolution_service: 5000, regulatory_defense: 100000.00,
                    pci_fines_and_costs: 50000.00, crisis_management_and_pr: 50000.00, foreign_notification: 10000.00)

    op_b = CoverageDetail.create(option: 'b', privacy_and_website_media: 500000.00, privacy_breach_service: 25000,
                            legal_forensic_cost: 50000.00, call_center_service: 'inc', deductible: 5000.00,
                            credit_monitoring_individuals: 25000, fraud_resolution_service: 5000, regulatory_defense: 250000.00,
                            pci_fines_and_costs: 50000.00, crisis_management_and_pr: 50000.00, foreign_notification: 10000.00)

    op_c = CoverageDetail.create(option: 'c', privacy_and_website_media: 1000000.00, privacy_breach_service: 50000,
                            legal_forensic_cost: 100000.00, call_center_service: 'inc', deductible: 5000.00,
                            credit_monitoring_individuals: 50000, fraud_resolution_service: 5000, regulatory_defense: 500000.00,
                            pci_fines_and_costs: 50000.00, crisis_management_and_pr: 50000.00, foreign_notification: 10000.00)

    op_a.save!
    op_b.save!
    op_c.save!
end

環境はレール実行環境を提供し、モデルの CoverageDetail がシーンに表示されます。

ありがとう

于 2012-10-04T17:22:47.553 に答える