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

Popular posts from this blog

windows - Heroku throws SQLITE3 Read only exception -

lex - Building a lexical Analyzer in Java -

python - rename keys in a dictionary -