मैं हाल ही में कुछ माइग्रेशन लिख रहा हूं जो अपरिवर्तनीय प्रवासन छतरी के नीचे आते हैं। लेकिन वे दुनिया के अंतहीन नहीं हैं। यदि आप चाहें तो आप उन्हें वापस रोल कर सकते हैं। इस समय मेरे पास परिदृश्य कई लोगों के साथ कई रिश्ते में बदल रहा है। इसमें एक कॉलम छोड़ना और एक नई जॉइन टेबल बनाना शामिल है। (साथ ही मॉडल में दो लाइनें)।अपरिवर्तनीय माइग्रेशन - निरस्त करने की बजाय चेतावनी और पुष्टि करें?
मैं सोच रहा था, डाउन माइग्रेशन को रद्द करने के बजाय, मैं कुछ कह सकता हूं "यह माइग्रेशन [INSERT SCARY संदेश यहां है], क्या आप वाकई आगे बढ़ना चाहते हैं? वाई/एन" और फिर माइग्रेशन वापस ले जाएं वे चुनते हैं? बस एक कथन के अंदर माइग्रेशन डालें?
माइग्रेशन अपरिवर्तनीय बनाने के लिए काफी आसान है, और आमतौर पर एक अच्छा कारण होता है (उदा। डेटा पुनर्प्राप्त नहीं किया जा सकता है)। क्या इन मुद्दों को आमतौर पर माइग्रेशन लिखकर हल किया जाता है जो इसे मैन्युअल रूप से करता है?
मेरे नोबिश दिमाग में यह एक सुखद माध्यम होना अच्छा लगेगा। क्या यह बुद्धिमान है? हो सकता है कि मैं समझ में नहीं आता कि उन्हें पहली जगह में गैर-परिवर्तनीय बनाने के लिए कब किया जाए।
"यह कहीं अधिक सुरक्षित है आपके लिए, डेटा मॉडल लिखने वाला व्यक्ति यह जानने के लिए बदलता है कि उन्हें अनुमानित करने के बजाय पिछली स्थिति में कैसे परिवर्तित किया जाए "। ठीक ठीक! यही कारण है कि मैं थोड़ा आश्चर्यचकित था कि यह विकल्प पहले से उपलब्ध नहीं था - क्योंकि यह पूरी तरह से संभव है कि कोई आपके द्वारा लिखे गए अपवाद को ओवरराइड कर देगा। – Nick
रूबी के बहुत कम नियम हैं। विचार करें: http://gfredericks.com/gfrlog/post/51 तो, हम सामान्य ज्ञान, सम्मेलन और अच्छे परीक्षण पर भरोसा करते हैं :) –