2012-01-18 12 views
5

क्या delete() से संबंधित कोई कॉन्फ़िगरेशन संभावनाएं हैं- SQLAlchemy के Sessions का तरीका? मैं संबंधित वस्तुओं को डेटाबेस में हटाए गए ध्वज के साथ चिह्नित करना चाहता हूं और इससे हटा नहीं हूं। क्या इसको हासिल करने के लिए कोई रास्ता है? इसका उद्देश्य SQLAlchemy की कैस्केडिंग सुविधाओं के फायदे खोए बिना विनाशकारी अपडेट के बिना डेटाबेस बनाना है।SQLAlchemy का सत्र बदलें। डिलीट() व्यवहार

उत्तर

4

अपने स्वयं के सत्र वर्ग Session से इनहेरिट बनाएँ और delete() (उन वर्गों कि logical delete की आवश्यकता के लिए) अपने खुद के तर्क के साथ विधि ओवरराइड, अन्य वस्तुओं के लिए डिफ़ॉल्ट implemetation पर वापस गिरने। यदि आप sessionmaker या इसी तरह के फैक्ट्री का उपयोग करते हैं, तो आप अपनी कक्षा class_ पैरामीटर में भी प्रदान कर सकते हैं।

उम्मीद है कि यह आपके प्रश्न का उत्तर देता है। लेकिन, कहा/लिखा, है कि वहाँ बहुत sooo अधिक तार्किक विलोपन विशेष रूप से Referential Integrity की अवधि में करने के लिए, कि एक है कि पर लेख की एक श्रृंखला लिख ​​सकते हैं।

+0

क्या आपके पास sqlalchemy के साथ लॉजिकल डेल्टे को लागू करने पर लेखों के कोई लिंक हैं? क्या आप अपने उत्तर में कुछ शामिल कर सकते हैं? –

+0

नहीं, मैंने अभी तक sqlalchemy के साथ तार्किक deletes लागू नहीं किया है। – van

संबंधित मुद्दे