प्राप्त() विधि आपको उन डेटाबेस से सभी मान प्रदान करेगी जो आपके पैरामीटर को पूरा करती हैं जहां पहले() आपको केवल पहला परिणाम मिलता है। जब आप कुंजी खोज रहे हों तो आप ढूंढें() और findOrFail() का उपयोग करें। इस प्रकार मैं उनका उपयोग करता हूं:
जब मैं किसी तालिका से सभी डेटा चाहता हूं तो मैं सभी() विधि मॉडल :: सभी() का उपयोग करता हूं;
जब मैं प्राथमिक कुंजी द्वारा खोजना चाहता हूं: मॉडल :: ढूंढें (1) -> पहले(); या मॉडल :: findOrFail (1) -> पहले(); यह काम करेगा यदि एक की प्राथमिक कुंजी के साथ कोई पंक्ति है। इसे केवल एक पंक्ति को पुनर्प्राप्त करना चाहिए, इसलिए मैं() के बजाय पहले() का उपयोग करता हूं। याद रखें कि आपने कुंजी 1 का उपयोग करने वाली पंक्ति को हटा दिया है या आपके टेबल में डेटा नहीं है, तो आपका खोज (1) असफल हो जाएगा।
जब मैं विशिष्ट डेटा की तलाश कर रहा हूं, जहां क्लॉज: मॉडल :: कहां ('फ़ील्ड', '=', 'value') -> get();
जब मैं केवल खंड में डेटा का पहला मान चाहता हूं। मॉडल :: जहां ('फ़ील्ड', '=', 'मान') -> पहले();
धन्यवाद nerdklers, मैं वास्तव में उत्तर की सराहना करता हूं! तो 'get() '** केवल ** आवश्यक नहीं है जब आप' -> ढूंढें() 'का उपयोग करते हैं ... मुझे उपयोग होने पर किसी भी दस्तावेज़ को नहीं मिल रहा है ... यह भी है -> प्राप्त करें() Eloquent में उपयोग की आवश्यकता नहीं है या() का उपयोग वही और फ्लुएंट क्वेरी बिल्डर में समान है? मदद के लिए धन्यवाद! [] [1] [1]: http://i6.minus.com/jLj4oKVAVXP8l.png –
इस बारे में सोचें: जब आप बिल्कुल नहीं जानते कि कोई प्रश्न वापस आ जाएगा तो आप 'get()' का उपयोग करने की आवश्यकता है। उदाहरण के लिए आप इसे 'सभी()' के साथ उपयोग नहीं कर सकते हैं क्योंकि आप ** ** जानते हैं कि यह सभी रिकॉर्ड्स वापस कर देगा और कोई और शर्तें लागू नहीं की जा सकती हैं। यह 'find()' के साथ समान है क्योंकि आप जानते हैं कि यह केवल एक रिकॉर्ड लाने का प्रयास करेगा। –
@nerdklers - अच्छा स्पष्टीकरण। आप इसे मुख्य उत्तर में जोड़ने के बारे में सोच सकते हैं। –