चूंकि आप कहते हैं, जेनरेट किया गया एसक्यूएल काम करता है जब आप इसे सीधे बुलाते हैं तो समस्या रूट ऑब्जेक्ट पर वापस लौटाए गए डेटा को मैप करने की प्रक्रिया में कहीं भी निहित है। भले ही आपका सेटअप ठीक दिखता है, यह बहुत गैर मानक लगता है, इसलिए मैं रेल को और अधिक देने का प्रयास करता हूं संघ कैसे एक साथ हैं, इस पर संकेत देता है।
शुरू करने के लिए आपको एक source
. सेट करना चाहिए आपके through
. के लिए संबंध (docs) :
has_many :inventories, through: :content_accesses, source: :inventory
यदि वह अभी भी रेल को सही सुराग नहीं देता है, तो आप inverse_of
. सेट करने का प्रयास कर सकते हैं , foreign_key
, primary_key
और यहां तक कि class_name
दूसरे पर belongs_to
और has_many
संघों, रेल को आवश्यक संकेत देने के लिए। यह बताना मुश्किल है कि क्या मदद कर सकता है, लेकिन गैर-मानक सेटअप में आप कभी-कभी स्वचालित रूप से अनुमानित नामों के साथ कुछ समस्याओं का अनुभव करते हैं।