मैं उन उदाहरणों को देखता हूं जहां कोडर ने Proc.new का उपयोग करना चुना, जब प्रतीत होता है कि यह अनावश्यक और अवांछित दोनों है।रेल कॉलबैक में किसी विधि को कॉल करने के लिए Proc.new का उपयोग क्यों करें? RoR के लिए सभी ट्यूटोरियल में
class Order < ActiveRecord::Base
before_save :normalize_card_number,
:if => Proc.new { |order| order.paid_with_card? }
end
class Order < ActiveRecord::Base
before_save :normalize_card_number, :if => "paid_with_card?"
end
तो क्या फर्क है:
उदाहरण के लिए, यहाँ एक कॉलबैक के लिए एक मॉडल में रखा, एक Proc.new का उपयोग अन्य शायद ही बात कर रहे है? प्रो का उपयोग क्यों करें? क्या वे दोनों "paid_with_card" नहीं कहते हैं? तरीका?
अग्रिम धन्यवाद
हाँ, इसे कूड़े रेल मॉडल को pay_with_card जैसी विधियों के साथ पसंद नहीं किया जा सकता है? – sunkencity
मुझे लगता है कि: यदि चीज बताती है कि कॉन्फ़िगरेशन विकल्पों में से एक बहुत सारे हैं जो स्वचालित रूप से शामिल हैं और किसी अन्य संदर्भ से पुन: उपयोग किए जाते हैं। इसे संभालने का एक डिफ़ॉल्ट तरीका है: if => स्ट्रिंग, proc, आदि जैसे कॉन्फ़िगरेशन विकल्पों में और शायद: जब तक कि काम भी न हो। – sunkencity