मैं चार अलग-अलग उपयोगकर्ता प्रकारों: व्यवस्थापक, कर्मचारी, निर्माता, ट्रांसपोर्टर के साथ एक सूची प्रबंधन अनुप्रयोग बना रहा हूं। मैं अभी तक कोडिंग शुरू नहीं किया है, लेकिन यह है कि मैं क्या सोच रहा हूँ .. निर्माता और ट्रांसपोर्टरों has_many के साथ संबंधित हैं: के माध्यम से कई करने के लिए कई उत्पादों के साथ मिलकर इस प्रकार है:रेल पर रूबी में एकाधिक उपयोगकर्ता भूमिकाएं
class Manufacturer < ActiveRecord::Base
has_many :products
has_many :transporters, :through => :products
end
class Product < ActiveRecord::Base
belongs_to :manufacturer
belongs_to :transporter
end
class Transporter < ActiveRecord::Base
has_many :products
has_many :manufacturers, :through => :products
end
सभी चार उपयोगकर्ता प्रकार होगा लॉगिन करने में सक्षम हो, लेकिन उनके पास अलग-अलग अनुमतियां और विचार होंगे, आदि। मुझे नहीं लगता कि मैं उन्हें एक ही तालिका (उपयोगकर्ता) में डाल सकता हूं, हालांकि, उनके पास अलग-अलग आवश्यकताएं होंगी, यानी: विक्रेताओं और निर्माताओं के पास होना चाहिए बिलिंग पता और संपर्क जानकारी (सत्यापन के माध्यम से), लेकिन व्यवस्थापक और कर्मचारियों के पास ये फ़ील्ड नहीं होना चाहिए।
यदि संभव हो, तो मैं 4 अलग-अलग स्क्रीन के विपरीत एक एकल लॉगिन स्क्रीन चाहूंगा।
मैं इसे बनाने के लिए सटीक कोड नहीं मांग रहा हूं, लेकिन मुझे ऐसा करने का सबसे अच्छा तरीका निर्धारित करने में समस्या हो रही है। किसी भी विचार की सराहना की जाएगी - धन्यवाद!
मदद के लिए धन्यवाद! उपयोगकर्ता के आधार वर्ग और विशिष्ट उपयोगकर्ता प्रकारों के लिए एसटीआई के साथ डेटाबेस टेबल कैसे स्थापित किए जाएंगे? मैं वास्तव में, वास्तव में रेल के लिए नया हूं :) – aguynamedloren
आपके पास डीबी में केवल 'उपयोगकर्ता' तालिका होगी। एसटीआई/एकल तालिका विरासत बेस क्लास के उपप्रकारों के बीच अंतर करने के लिए आधार तालिका (इस मामले में 'उपयोगकर्ताओं') में 'प्रकार' फ़ील्ड का उपयोग करती है। आपको इस क्षेत्र को माइग्रेशन में जोड़ना होगा। फिर बेस क्लास के सभी उपप्रकारों के लिए सभी विशेषताओं को उपयोगकर्ता तालिका में रखा जाएगा, भले ही उनमें से कई विशिष्ट उदाहरण/पंक्तियों द्वारा उपयोग नहीं किए जाएंगे। यह एसटीआई पैटर्न का उपयोग कर ट्रेडऑफ है - आपके पास अप्रयुक्त विशेषताओं के लिए कई शून्य फ़ील्ड हो सकते हैं, इस पर निर्भर करता है कि कितने उप-विशिष्ट-विशिष्ट विशेषताएं हैं। –