मेरे पास एक प्रश्न है:

User.includes(:translations, :user_roles, :user_rating,
                              :user_verification, :portfolios, :reviews, :user_account,
                              :task_responses, :user_favorite_categories, :photo)
                    .where(
                      user_favorite_categories: { category: cat&.main_category_ids },
                      user_reviews: { review_type: 'author_as_contractor' }
                    )
                    .where('users.hidden_until is null OR users.hidden_until < ?', Time.current)

इस क्वेरी में उपयोगकर्ता की समीक्षाएं शामिल हैं

user_reviews: { review_type: 'author_as_contractor' } क्लॉज को वैकल्पिक कैसे बनाएं?

उपयोगकर्ता का चयन करें, भले ही उसके पास कोई समीक्षा न हो।

1
Eugene 26 मार्च 2020, 16:54

1 उत्तर

सबसे बढ़िया उत्तर

आप इसके लिए eager_load और where इस तरह इस्तेमाल कर सकते हैं:

User.eager_load(:reviews)
    .where(user_reviews: { review_type: ['author_as_contractor', nil] })
1
Vasiliy Ermolovich 26 मार्च 2020, 14:57