एलोक्वेंट लैरावेल का एक्टिव रिकॉर्ड पैटर्न का कार्यान्वयन है और यह अपनी सभी ताकत और कमजोरियों के साथ आता है।
सीआरयूडी तरीके से एकल इकाई को संसाधित करने के लिए सक्रिय रिकॉर्ड एक अच्छा समाधान है - यानी, भरे हुए गुणों के साथ एक नई इकाई बनाएं और फिर इसे डेटाबेस में सहेजें, डेटाबेस से रिकॉर्ड लोड करें, या हटाएं।
आपको एलोक्वेंट की सुविधाओं से बहुत लाभ होगा जैसे कि गंदी जाँच (केवल बदली गई फ़ील्ड के लिए SQL UPDATE भेजने के लिए), मॉडल ईवेंट (उदाहरण के लिए व्यवस्थापकीय अलर्ट भेजने के लिए या जब किसी ने एक नया खाता बनाया है, तो आंकड़े काउंटर अपडेट करें), लक्षण ( टाइमस्टैम्प, सॉफ्ट डिलीट, आपके कस्टम लक्षण) उत्सुक/आलसी लोडिंग इत्यादि। आप डोमेन-संचालित पैटर्न भी लागू कर सकते हैं और अपनी सक्रिय रिकॉर्ड इकाइयों में व्यावसायिक तर्क के कुछ टुकड़े लागू कर सकते हैं, उदाहरण के लिए, सत्यापन, प्रबंधन संबंध, गणना इत्यादि।
लेकिन, जैसा कि आप पहले से ही जानते हैं, सक्रिय रिकॉर्ड कुछ प्रदर्शन मूल्य के साथ आता है।
जब आप किसी एकल रिकॉर्ड या कुछ रिकॉर्ड को संसाधित करते हैं, तो चिंता की कोई बात नहीं है। लेकिन ऐसे मामलों के लिए जब आप बहुत सारे रिकॉर्ड पढ़ते हैं (जैसे डेटाग्रिड के लिए, रिपोर्ट के लिए, बैच प्रोसेसिंग आदि के लिए) सादा लारवेल DB
तरीके एक बेहतर तरीका है।
हमारे Laravel आधारित अनुप्रयोगों के लिए हम दोनों दृष्टिकोणों का उपयोग कर रहे हैं जैसा कि हम उपयुक्त देखते हैं। हम एकल रिकॉर्ड को संसाधित करने और DB
का उपयोग करने के लिए UI रूपों के लिए Laravel's Eloquent का उपयोग करते हैं यूआई टेबल, निर्यात कार्यों आदि के लिए डेटा पुनर्प्राप्त करने के लिए विधियों (अतिरिक्त डेटाबेस इंजन विशिष्ट प्रदर्शन ट्वीक्स के साथ एसक्यूएल विचारों द्वारा समर्थित)। यह रीस्टफुल एपीआई के साथ भी अच्छी तरह से काम करता है - एक कुंजी और DB
बिना चाबी के GET के लिए लेकिन फिल्टर और सॉर्टिंग और पेजिंग के साथ।