Rails 4 joins query display the wrong resource -


मेरे पास 2 संसाधन, डॉक्टर और आरक्षण हैं।

  वर्ग डॉक्टर & lt; ActiveRecord :: बेस है has_many: आरक्षण अंत वर्ग आरक्षण & lt; ActiveRecord :: बेस के लिए संबंधित है: डॉक्टर अंत   

स्कीमा:

  create_table "आरक्षण", बल: सच do | t | T.integer "doctor_id" t.date "date" अंत create_table "डॉक्टरों", बल: सच do | t | T.string "description" t.datetime "created_at" t.datetime "updated_at" end   

मैं एक तिथि पर उपलब्ध सभी डॉक्टरों को प्रदर्शित करना चाहता हूं, इसलिए सभी डॉक्टरों के पास न हों उस दिन पर आरक्षण।

मेरी क्वेरी: <पूर्व> डीईफ़ सूचकांक डॉक्टरों = डॉक्टर.ऑलडर ("बनाया गया डीएएससी") डॉक्टरों = @ डॉक्टरों.जंक्स (: आरक्षण)। Where.not ('reservations.date की तरह?', पैरामीटर [: फ्री_ऑन]) यदि पराम [: मुफ्त_ऑन] .प्रदर्शित? @ डॉक्टरों = @ डॉक्टरों (पृष्ठ: पृष्ठ = & gt; पैराम्स [: पृष्ठ],: per_page = & gt; 9) अंत

मेरी समस्या यह है: यह प्रश्न मुझे आरक्षण के रूप में देता है परिणाम। अगर मेरे पास 1 डॉक्टर और 3 आरक्षण मेरे डेटाबेस में हैं, और मैं 1 नवंबर का (1 तारीख को 1 आरक्षण) का चयन करता हूं, तो 2 नवंबर को उसी आरक्षण के लिए मुझे 2 बार दिखाता है। / P>

मैंने कोशिश की। ग्रुप, लेकिन फिर से मुझे सिर्फ 1 डॉक्टर दिखाए गए हैं यदि कोई आरक्षण है ...

किसी ने मेरे प्रश्न में क्या गलत है? < P>

आपकी क्वेरी का पूरा आधार गलत है।

  @ डॉक्टरों = @ डॉक्टरों.जंक्स (: आरक्षण)। Where.not ('reservations.date की तरह?', पैरामीटर [: फ्री_ऑन])   

आपको डॉक्टर मिल रहे हैं "फ्री_ऑन" के अलावा अन्य दिनों में आरक्षण है - भले ही उनके पास "free_on" पर कोई आरक्षण है या नहीं ऐसा नहीं है कि आप क्या करना चाहते हैं आप उन डॉक्टरों को ढूंढना चाहते हैं जिनके पास "फ्री_ऑन" पर कोई आरक्षण नहीं है।

  @doctors = @ डॉक्टरों कहां ("मौजूद नहीं है (आरक्षण से * चुनें * जहां डॉक्टर_आईडी = डॉक्टर।      

Comments

Popular posts from this blog

php - PDO bindParam() fatal error -

logging - How can I log both the Request.InputStream and Response.OutputStream traffic in my ASP.NET MVC3 Application for specific Actions? -

java - Why my included JSP file won't get processed correctly? -