वर्तमान में मेरे पास दो अलग-अलग मॉडल हैं: User
और Project
। User
मॉडल में तीन प्रकार के उपयोगकर्ता हैं - मालिक, ठेकेदार और ग्राहक। मैं एक परियोजना के लिए कई ठेकेदारों को असाइन करना चाहता हूं। मैं एक has_many :through
संघ के साथ इस कोशिश कर रहा हूँ, इसलिए जैसे:रेल है_मनी: एसोसिएशन टेबल में विभिन्न कॉलम नाम के साथ
Class User
has_many :assignments
has_many :projects, :through => :assignments
Class Project
has_many :assignments
has_many :contractors, :through => :assignments
Class Assignment
belongs_to :user
belongs_to :project
मेरे मुद्दे के बजाय user_id
assignments
तालिका में contractor_id
का उपयोग करने में है।
मेरी assignments
तालिका में वर्तमान में मेरे पास कॉलम contractor_id
और project_id
हैं। अगर मैं user_id
का उपयोग करता हूं तो सबकुछ काम करता प्रतीत होता है, लेकिन इससे मेरे विचारों में चीजें बहुत गन्दा हो जाएंगी।
मैं इसे कैसे पूरा करूं?
यह निश्चित रूप से, एक तरह से काम करता है अब मैं सिर्फ पहचान करने के लिए उपयोगकर्ता मॉडल प्राप्त करने की आवश्यकता '' बजाय user_id' की contractor_id' जब मैं कॉल करें @ user.projects' –
इसे मिला। उपयोगकर्ता मॉडल की आवश्यकता है: विदेशी_की =>: contract__any पर contractor_id: असाइनमेंट –