मैं स्पष्ट रूप से एक मॉडल के टेबल-नाम मैपिंग को रेल में कैसे निर्दिष्ट कर सकता हूं?


230

मेरे पास एक मॉडल वर्ग है जिसे देश कहा जाता है और मैं चाहता हूं कि इसे 'cc' नामक DB तालिका में मैप किया जाए।

रेल में कैसे किया जाता है?

जवाबों:


427

रेल> = 3.2 (रेल 4+ और 5+ सहित):

class Countries < ActiveRecord::Base
  self.table_name = "cc"
end

रेलें <= 3.1:

class Countries < ActiveRecord::Base
  self.set_table_name "cc"
  ...
end

क्या table_nameहर मॉडल के लिए निर्दिष्ट करना सबसे अच्छा अभ्यास है ?
सुंग चो

10
@ माइक- नहीं। यह रेल मार्ग जितना संभव हो उतना संक्षिप्त होना चाहिए और जब यह सम्मेलनों को ओवरराइट कर दे तो केवल कोड लिखें।
तोबुलकेह

@SungWonCho प्रत्येक मॉडल पर तालिका का नाम निर्दिष्ट करने के लिए इसका सबसे अच्छा अभ्यास नहीं है, केवल तब इसका उपयोग करें जब आपको तालिका के लिए एक अलग नाम की आवश्यकता हो
Thorin

137
class Countries < ActiveRecord::Base
    self.table_name = "cc"
end

रेल 3.x में यह तालिका नाम निर्दिष्ट करने का तरीका है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.