ऐसा इसलिए होता है क्योंकि संबंधित संबंध join
. को निष्पादित नहीं करता है क्वेरी के रूप में आप इसकी अपेक्षा करते हैं (जैसा कि आप प्राप्त त्रुटि से देख सकते हैं)। यह संबंधित मॉडल प्राप्त करने के लिए एक और क्वेरी निष्पादित करता है। इस प्रकार आप मूल मॉडल को संबंधित मॉडल कॉलम द्वारा ऑर्डर नहीं कर पाएंगे।
मूल रूप से, 2 प्रश्न होते हैं:
-
मूल मॉडल के साथ मूल मॉडल प्राप्त करें
SELECT * from originalModel ...*
-
संबंधित मॉडल के साथ संबंधित मॉडल प्राप्त करें
SELECT * from relatedModel where in id (originalModelForeignKeys)
में है
फिर लारवेल कुछ जादू करता है और दूसरी क्वेरी के मॉडल को पहली क्वेरी से सही मॉडल से जोड़ता है।
आपको एक वास्तविक join
करना होगा
जिस तरह से आप चाहते हैं उसे ऑर्डर करने में सक्षम होने के लिए।