7

मैं कुछ तालिकाओं और ट्रिगर्स को हटाने के लिए एक रेक कार्य बनाने के लिए काम कर रहा हूं।ActiveRecord :: ConnectionNot एक रेक कार्य के भीतर स्थापित

मेरे रेक कार्य:

rake remove_rubyrep 
RAILS_ENV=development rake remove_rubyrep 

समस्या के साथ रेक कार्य त्रुटियों है:

task :remove_rubyrep do 
    sql = <<-SQL 
    DROP TABLE rr_logged_events, rr_running_flags, rr_pending_changes; 
    SQL 
    ActiveRecord::Base.establish_connection 
    ActiveRecord::Base.connection.execute(sql) 
end 

मैं तो इस तरह चलाने का भी प्रयास

rake aborted! 
ActiveRecord::ConnectionNotEstablished 

कैसे अनुमति देने के लिए पर कोई सुझाव कच्चे वर्ग को निष्पादित करने के लिए डीबी से कनेक्ट करने के लिए रेक कार्य? धन्यवाद

उत्तर

21

आप अपने रेक कार्य में रेल एप्लिकेशन लोड नहीं कर रहे हैं, इसलिए ActiveRecord कभी डेटाबेस कनेक्शन नहीं बनाता है।

करने के लिए अपने रेक कार्य बदलें:

task :remove_rubyrep => :environment do 

कि करने के बाद, आप अब "establish_connection" लाइन

+0

शुद्ध प्रतिभा, आवश्यकता होगी धन्यवाद – AnApprentice

संबंधित मुद्दे