रेल 3: एकाधिक डेटाबेस कनेक्शन समस्या

मेरे पास एक रेल ऐप और दो अलग-अलग डेटाबेस हैं।

केस का उपयोग करें:

यदि मैं http://mydomain.com ब्राउज़ करता हूं, तो यह एक रेल ऐप को इंगित करता है

     

यदि मैं http://mydomain.com/project1 ब्राउज़ करता हूं, तो यह समान रेलों को इंगित करता है   विभिन्न डेटाबेस के साथ ऐप प्रोजेक्ट 1 डीबी

कहें      

यदि मैं http://mydomain.com/project2 ब्राउज़ करता हूं, तो यह समान रेलों को इंगित करता है   विभिन्न डेटाबेस के साथ ऐप प्रोजेक्ट 2 डीबी

कहें      

दोनों डेटाबेस टेबल और स्कीमा के संदर्भ में समान हैं

मैं इसे establ_connection "project1DB" मॉडल में उपयोग करके प्राप्त कर सकता हूं लेकिन मैं अपने मॉडल को संशोधित नहीं करना चाहता हूं।

मैंने एप्लिकेशन नियंत्रक में अनुसरण करने का प्रयास किया लेकिन यह कभी-कभी काम नहीं करता था

before_filter :dbconnect

def dbconnect
      if session[:product] == "project1"
        ActiveRecord::Base.establish_connection 'project1_' + Rails.env  
      end

      if session[:product] == "project2"
        ActiveRecord::Base.establish_connection 'project2_' + Rails.env  
      end
end
0
@AndyV हां तीन डेटाबेस हैं और सभी समान हैं
जोड़ा लेखक GBD, स्रोत
क्या यहां दो डीबी हैं या तीन (mydomain.com, mydomain.com/project1, mydomain.com/project2)? असल में मैं सोच रहा हूं कि "कोर" टेबल (खाते/उपयोगकर्ता/आदि) का एक सेट है जो केंद्रीय डीबी में निहित है और जो परियोजना डीबी में शाखाओं का समर्थन करता है।
जोड़ा लेखक AndyV, स्रोत

कोई जवाब नहीं है

0