"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > त्रुटियों के बिना अद्वितीय सत्यापन नियमों के साथ लारवेल मॉडल को कैसे अपडेट करें?

त्रुटियों के बिना अद्वितीय सत्यापन नियमों के साथ लारवेल मॉडल को कैसे अपडेट करें?

2024-11-08 को प्रकाशित
ब्राउज़ करें:661

How to Update a Laravel Model with Unique Validation Rules Without Errors?

लारवेल: अद्वितीय सत्यापन नियमों के साथ एक मॉडल को अपडेट करना

लारवेल में, डेटा अखंडता सुनिश्चित करने के लिए मॉडल अपडेट के दौरान फ़ील्ड को मान्य करना महत्वपूर्ण है। हालाँकि, अद्वितीय सत्यापन नियम मौजूदा रिकॉर्ड को अपडेट करते समय समस्याएँ पैदा कर सकते हैं। $उपयोगकर्ता = $यह->findById($id); $उपयोगकर्ता->भरें($डेटा); $this->validate($user->toArray()); $user->save(); $उपयोगकर्ता लौटाएँ; }

यह कोड मॉडल के फ़ील्ड को पुनः मान्य करने का प्रयास करता है, जिसमें "उपयोगकर्ता नाम" और "ईमेल" जैसे अद्वितीय फ़ील्ड शामिल हैं। हालाँकि, मौजूदा अद्वितीय मानों के साथ रिकॉर्ड को अपडेट करने का प्रयास करते समय यह दृष्टिकोण सत्यापन त्रुटियों का कारण बन सकता है।

public function update($id, $data) {
    $user = $this->findById($id);
    $user->fill($data);
    $this->validate($user->toArray());
    $user->save();

    return $user;
}

इंस्टेंस की आईडी पास करें:

    अपडेट किए जा रहे इंस्टेंस की आईडी को अपडेट विधि में पास करें:
  1. सार्वजनिक फ़ंक्शन अपडेट ($आईडी, $डेटा) { $उपयोगकर्ता = $यह->findById($id); $उपयोगकर्ता->भरें($डेटा); $this->validate($user->toArray(), ['id' => $id]); $user->save(); }

    public function update($id, $data) {
        $user = $this->findById($id);
        $user->fill($data);
        $this->validate($user->toArray(), ['id' => $id]);
        $user->save();
    }
  2. सत्यापनकर्ता में, हम यह पता लगाने के लिए आईडी पैरामीटर का उपयोग करते हैं कि हम संसाधन को अपडेट कर रहे हैं या बना रहे हैं:

  3. अपडेट कर रहा है:

    अद्वितीय सत्यापन नियमों के लिए, वर्तमान रिकॉर्ड को बाहर करने के लिए नियम में ,{$id} जोड़ें। उदाहरण के लिए:
    • 'email' => 'unique:users,email,{$id}',

      'email' => 'unique:users,email,{$id}',
      अद्वितीय सत्यापन नियमों के लिए, आईडी शामिल न करें। उदाहरण के लिए:
    • 'email' => 'unique:users,email',

      'email' => 'unique:users,email',
      इन चरणों का पालन करके, हम कर सकते हैं यह सुनिश्चित करते हुए कि अद्वितीय सत्यापन बाधाओं का सम्मान किया जाता है, लारवेल मॉडल को सुरुचिपूर्ण ढंग से अपडेट करें।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3