[Ruby-on-rails] क्या रेल रेक रेक कार्य ActiveRecord मॉडल तक पहुंच प्रदान करते हैं?


Answers

आपको अपनी कॉन्फ़िगरेशन की आवश्यकता हो सकती है (जो आपके सभी आवश्यक मॉडल आदि निर्दिष्ट करनी चाहिए)

उदाहरण के लिए:

require 'config/environment'

वैकल्पिक रूप से आप केवल प्रत्येक अलग-अलग की आवश्यकता हो सकती है, लेकिन आपके पास पर्यावरण समस्याएं हो सकती हैं एआर सेट अप नहीं आदि)

Question

मैं एक कस्टम रेक कार्य बनाने की कोशिश कर रहा हूं, लेकिन ऐसा लगता है कि मेरे पास मेरे मॉडल तक पहुंच नहीं है। मैंने सोचा कि यह कुछ रेलवे कार्य के साथ निहित रूप से शामिल था।

मेरे पास lib / works / test.rake में निम्न कोड है:

namespace :test do
  task :new_task do
    puts Parent.all.inspect
  end
end

और यहां मेरा मूल मॉडल जैसा दिखता है:

class Parent < ActiveRecord::Base
  has_many :children
end

यह एक बहुत ही सरल उदाहरण है, लेकिन मुझे निम्न त्रुटि मिलती है:

/> rake test:new_task
(in /Users/arash/Documents/dev/soft_deletes)
rake aborted!
uninitialized constant Parent

(See full trace by running task with --trace)

कोई विचार? धन्यवाद




: पर्यावरण निर्भरता काफी सही ढंग से बुलाया जाता है, लेकिन फिर भी रेक को अन्य रत्नों के बारे में पता नहीं हो सकता है जो आपके मॉडल पर निर्भर करते हैं - मेरे एक मामले में, 'संरक्षित_ सामग्री'।

जवाब चलाने के लिए है:

bundle exec rake test:new_task

यह गारंटी देता है कि पर्यावरण में आपके जेमफाइल में निर्दिष्ट किसी भी रत्न शामिल हैं।