Rails 3 equivalent of complex SQL query -
निम्न मॉडल को देखते हुए:
वर्ग पकाने की विधि & lt; ActiveRecord :: बेस has_many: recipe_ingredients_which_many: सामग्री, के माध्यम से = & gt; : नुस्खा-सामग्री का अंत वर्ग पकाने की विधि संघटक & lt; ActiveRecord :: बेस is_to: recipe is_to: घटक अंत वर्ग संघटक & lt; ActiveRecord :: Base end
मैं Rails 3 में Arel का उपयोग कर निम्न एसक्यूएल क्वेरी कैसे कर सकता हूं?
चयन करें- व्यंजनों से जहां मौजूद नहीं है (SELECT * सामग्री से कहां में नाम ('चॉकलेट', 'क्रीम') और नहीं है (चयन करें * से नुस्खा-सामग्री कहां नुस्खाएं। Recipe_id = recipes.id और recipe_ingredients.ingredient_id = ingredients.id))
मुझे यकीन नहीं है कि Arel या ActiveRecord का उपयोग कर रिलेशनल डिवीज़ कैसे करें। यदि यह दो प्रश्नों को करने के लिए स्वीकार्य है, तो यह समतुल्य होगा:
with_scope (शामिल है (व्यंजनों)) cream_recipes = Ingredient.where (: name = & gt; "cream")। .रेपिप्स चॉकलेट_रेसिप्स = संघटक.वहाँ (: नाम = & gt; "चॉकलेट")। पहले। पुनर्प्राप्ति के अंत @recipes_with_chocolate_and_cream = cream_recipes & amp; चॉकलेट_रेसिप्स
या आप एसक्यूएल सीधे सीधे का उपयोग कर सकते हैं।
Comments
Post a Comment