9
วิธีการคืนค่าความสัมพันธ์ ActiveRecord ที่ว่างเปล่า?
หากฉันมีขอบเขตที่มีแลมบ์ดาและใช้การโต้แย้งขึ้นอยู่กับมูลค่าของการโต้แย้งฉันอาจรู้ว่าจะไม่มีการแข่งขันใด ๆ แต่ฉันยังต้องการคืนความสัมพันธ์ไม่ใช่อาร์เรย์ที่ว่างเปล่า: scope :for_users, lambda { |users| users.any? ? where("user_id IN (?)", users.map(&:id).join(',')) : [] } สิ่งที่ฉันต้องการจริงๆคือวิธีการ "ไม่มี" ตรงข้ามกับ "ทั้งหมด" ที่ส่งคืนความสัมพันธ์ที่ยังคงถูกผูกมัดอยู่ แต่ผลลัพธ์ในการค้นหาจะเกิดการลัดวงจร