मैं निम्नलिखित श्रेणियां होती हैं कहते हैं:सिद्धांत 2 में कई लोगों के रिश्ते में इकाइयों को कैसे निकालना है?
class Store
{
/**
* @ManyToMany(targetEntity="PaymentMethod")
*/
protected $paymentMethods;
}
class PaymentMethod
{
}
जब हम हटाना (या बस, को निष्क्रिय वास्तव में डेटाबेस से निकाले बिना) एक PaymentMethod
, हम चाहते हैं कि इस paymentMethod
सभी Store::$paymentMethods
संग्रह से निकाल दिया जाएगा।
अब तक, हम इस के लिए जंक्शन मेज पर कच्चे एसक्यूएल प्रश्नों का उपयोग कर:
DELETE FROM StorePaymentMethod WHERE paymentMethodId = ?
वहाँ ऐसा करने के लिए सिद्धांत में, DQL में अधिमानतः एक तरीका है?
मुझे यह सीधे प्राप्त करने दें। आप स्टोर क्लास में सूची से हटाए गए भुगतान विधियों को हटाना चाहते हैं? इसे डीबी से हटाने से इसे सूची से हटाया नहीं जाएगा। – jere
यदि यह कई लोगों के लिए है, तो क्या आप 'भुगतान विधि' में '$ स्टोर' संग्रह को खाली संग्रह में सेट नहीं कर सकते हैं और इसे जारी रख सकते हैं? आपको यह सुनिश्चित करने के लिए स्मृति में सभी 'स्टोर' ऑब्जेक्ट्स को अमान्य करने की आवश्यकता होगी कि उनके पारस्परिक लिंक रिकॉर्ड नहीं रखे। हालांकि एक आदर्श दुनिया में, रिक्त प्रदर्शन करने के लिए आपके द्वारा लिखे गए एक्सेसर्स विधियों को पारस्परिक लिंक को हटाने 'स्टोर' के माध्यम से जाना होगा। – Orbling