2011-11-10 11 views
5
Böyle bir tırmık görev Fabrika Kız kullanmaya çalışıyorum

: Ben rake users:create_sample_users çalıştırdığınızdabir tırmık görev içinde factory_girl kullanma - alma başlatılmamış sabit

require 'factory_girl' 
require File.expand_path("spec/factories.rb") 

namespace :users do 

    desc "Create sample users for use in development" 
    task :create_sample_users => :environment do 
    Factory(:user, :email => "[email protected]") 
    Factory(:approved_user, :email => "[email protected]") 
    end 

end 

Ancak hata uninitialized constant Entry (Entry olsun adıdır benim app sınıflarından biri).

Fabrika kızına sınıflarımı nasıl göreceklerini söyleyen var mı? Testlerimde iyi çalışıyor, sadece komisyon görevlerimde başarısız oluyor.

cevap

10

Rails'in, modellerinizi fabrikalara ihtiyaç duyduğunuz noktada yüklemediğini tahmin ediyorum. Bu deneyin:

require 'factory_girl' 

namespace :users do 

    desc "Create sample users for use in development" 
    task :create_sample_users => :environment do 
    require File.expand_path("spec/factories.rb") 
    Factory(:user, :email => "[email protected]") 
    Factory(:approved_user, :email => "[email protected]") 
    end 

end 
+1

Teşekkürler - bunu sıraladı! Bir bonus olarak, '' File.expand_path '' ("spec/factories.rb") 'yi nereye koyabileceğimi biliyor musunuz? Böylece her göreve dahil etmek zorunda değilim. Tekrar teşekkürler. – Mike

0

dmcnally cevabı @ bulamadım sabitler garip hatalar başlamıştı olarak, benim için çalışmadı. Bunun yerine, rayları raybalatarak çözdüm:

sh "rails runner 'FactoryGirl.create :user'" 
İlgili konular