0:00
तो गैस पिछले वीडियो के अंदर हम लोगों ने देखा था कि डीटा को कैसे डालते हैं डीटाविस के अंद�
0:03
मॉंगूज मॉडल अगर हमारा बना हुआ है तो अब हम लोग क्या करेंगे थोड़ा बहुत वैलिडेशन यहाँ पर देखने वाले है�
0:09
और वो validation करने के लिए हम लोग use करेंगे express validator क�
0:14
जो कि एक npm package है तो obviously सबसे पहले आप लोगों को इसको install करना पड़ेगा express validator क�
0:19
तो यहाँ पर मैं क्या करूँगा एक नया terminal खोलकर इसको install कर लूँगा लेकिन उससे भी पहले मैं commit मार लेता हू�
0:24
क्योंकि मैंने commit मारा नहीं है तो मैंने just अभी ये git पे commit मार लिया है और आप लोग यहाँ पर देख�
0:30
कि मैं इस package को install करने वाला हूँ enter मार के और ये commits मैं इसलिए मार रहा हू�
0:34
git के अंदर ताकि आप लोगों को मैं codewithharry.com पर सारे के सार�
0:38
वो links देतूं जो कि गेटअप पर जाएंगे और आपको उस point पर code मिल जाएगा जिस point पर हम अभी है�
0:44
देखो मैंने यह install कर लिया package अब हम लोग क्या करेंगे इसको use करना देखेंगे कि कैसे use करना ह�
0:48
तो express वगैरह तो हमने already इसको include कर रखा है आपने करना क्या है कि ये चीज करनी है ठीक ह�
0:54
body validation result is equal to require express validator तो ये destructuring की जा रही है यहाँ प�
1:00
हम लोग क्या करेंगे कि इसको import करेंगे यहाँ पर अपने router वाली file के अंदर odd.js के अंद�
1:06
और हम लोग करेंगे क्या कि जो यहाँ पर आपको router.post यहाँ पर दिख रहा है यह जो endpoint मैंने लिखा हुआ है इसके बाद यहाँ पर मैं क्या करूँग�
1:13
एक array बनाऊंगा एक empty array बनाऊंगा और उस array के अंदर मैं सारे के सारे अपने validations डालूँग�
1:19
अब यहाँ पर देखो यह आपको बता रहा है कि किस तरह से इसको इस्तेमाल करना है तो आपको क्या करना है लिखना है body username.isemail
1:25
तो नहीं यार मुझे तो username email चाहिए नहीं पर मुझे email ज़रूरी इस email चाहिए ठीक ह�
1:30
तो यह एक check मैंने लगा लिया उसी के साथ साथ मैं चाहता हूँ कि जो मेरा name है उसकी length minimum कम से कम 3 तो हो यार ठीक ह�
1:37
तो मैं यहाँ पर यह वाला जो check है वो use करूँगा as is copy कर लूँगा और इसको यहाँ पर paste कर लूँग�
1:42
तो मैं लिखूँगा जो name है उसकी is length minimum 3 तो हो यार ठीक ह�
1:47
और उसी के साथ साथ मैं जो मैंने copy किया हुआ था password की minimum length 5 मुझे चाहि�
1:52
क्योंकि मैं चाहता हूँ कि password जो है वो कम से कम यार secure तो रहे ठीक ह�
1:58
तो यह चीज मुझे यहाँ पर देखनी है और अब देखो मैं यह जैसे ही करूँग�
2:02
तो आप लोग देखते जाओ क्या होगा अब मैं क्या करूंगा कि देखो ने यूजर डॉट क्रिएट यहां पर किया हुआ है ठीक ह�
2:08
और इसके बाद इन्होंने क्या किया हुआ है कि जो यूजर ड fulfil एक प्रॉमिस रिटर्न कर रहा है और यूजर को रिटर्�
2:15
कर रहा है ठीक है जो कि यूजर हमारा उसी को रिटर्न कर रहा तो मैं यहां पर जब से पहले तो इस टेंटेक्स क�
2:19
कॉपी करूंगा यूजर डॉट क्रिएट जो है वह एक प्रॉमिस हमारा रिटर्न करता है मैंने आप एडिवर्स इकल ट�
2:25
यह कर दिया और यूजर डॉट सेव कर दिया तो आप कैसे भी कर सकते हो ठीक है इस चीज को आप कैसे भी कर सकत�
2:30
अभी यहाँ पर हमारी app crash क्यों हो रही है मैंने save किया हमारी app चलने लग ग�
2:34
और यहाँ पर देखो इन्होंने validation को किस तरह से लिया हुआ ह�
2:39
तो देखो यार मैं एक बात आपको बोलूंगा कि यह package मैंने नहीं बनाया है ठीक ह�
2:43
हम लोग इस code को copy करेंगे यहाँ से और इसका जो structure है उसको समझेंगे ठीक ह�
2:47
तो यह जो चीज मैंने की हुई है console.log वगैरा इसमें हटा देता हू�
2:51
और यहाँ पर देखो validation result request not of errors empty errors empty true return 400 bad request error errors
3:06
तो देखते हैं कि यह चीज़ काम कर दिया है कि नहीं, तो मैं एक invalid request मार के देखता हूँ यहाँ पर
3:10
empty name मैंने भेज दिया है पर तो देखो errors value message
3:13
invalid value और उसी के साथ साथ यहाँ पर देखो param name
3:18
और location body ठीक है तो invalid value थी name की इसलिए इसने मुझे इस तरह स�
3:22
दिया अब मान लो कि मैं email के अंदर यह लगाना भूल जाओ और name मे�
3:25
कुछ-कुछ लिख दूँ और मेरा email एक ईमेल नहीं है तो यह एमेल जो है वह एक इनवालिड वैल्यू है परम ईमेल लोकेशन बॉडी तो इसने मुझे यहाँ पर यह सारी चीजें बता दी हैं ठीक है तो आप लोग बड़े आराम से इसकी सायदाता वैलिडेट कर सकते हो और आपको एक कस्टम मैसेज डालना है �
3:58
body name के बाद अगर मैं लिख दूं एंटर वालेड नेम और उसे के साथ साथ ईमेल के बाद मैं लिख दूं एंटर वाले�
4:07
ईमेल तो यह यहां पर अगर मैं रिक्वेस्ट भेजूंगा तो यह देखो इस बार इसने मैसेज में कुछ और दिया एंटर वाले�
4:13
तो मैं custom message भी भेज सकता हूँ ठीक है अगर मान लो enter a valid name और enter a valid email ये दोनों ही कलतीयां कर दी मैंने दोनों ही चीज़े invalid मैंने भेज दी हैं देख�
4:22
दोनों मुझे मिलेंगे एरर्स तो एरर से करें है जिसके अंदर आपके मल्टिपल एरर्स और अगर मैंने पासवर्ड भी छोटा रख दिया तो तीन एरर्स मिलेंगे मुझे एक पासवर्ड का एक मुझे वैलेड नेम का मिलेगा एक वैलेड ईमेल का मिलेगा पासवर्ड के �
4:52
रहा है यह लेहर नहीं लगाएंगे तब क्या होगा तब होने वाली दिक्कत ठीक है और यह जो मांगूस मॉडल क�
4:58
यूजर में बनाऊंगा तो मैं बिल्कुल यही काम करूंगा जो नहीं किया हुआ है यूजर डोट क्रिएट का इस्तेमा�
5:03
लूंगा क्योंकि एक प्रॉब्लम रिटर्न करता है और जैसे ही यह चला जाएगा डाइटएपिस के अंदर उसकी बा�
5:09
मुझे जो है यूजर सेंड कर दिया जाएगा तो अगर मैं यहां पर एक अच्छा सा यूजर बनाओ एक वालेड पासवर्ड क�
5:17
और मैं send करूँ तो यहाँ पर देखो यह यहाँ पर आ चुग�
5:22
पर यहाँ पर मुझे एक warning दे रहा है कह रहा है कि deprecation warning
5:26
तो यहाँ पर जो है error आ गया और error आने का reason यह है क�
5:31
यह मुझे basically यह कह रहा है कि आपने request.body.name और email
5:35
लिखना था तो मैं नेम और email लिख दूँगा ठीक है तो यहाँ पर आप लोग देखो जो मेर�
5:40
नेम है वो request.body.name हो जाएगा जो password है वो request.body.password हो जाएग�
5:46
और उसी के साथ साथ जो मेरा email है वो request.body.email हो जाएगा ठीक ह�
5:50
और अब यार error नहीं मिलना चाहिए मुझे send किया error error cannot set errors after they are sent to the client already res save run
6:06
नहीं मिलना चाहिए तो यहाँ पर देखो कि वो जो ऑप्शन जो कि मैंने डाला है वो मुझे यहाँ पर देखने को मिल गय�
6:11
और उसी के साथ साथ यही चीज मुझे मॉंगो भी देखने को भी मिलनी चाहिए तो मैं रिलोड डाटा करूंगा तो यहा�
6:16
यहाँ पर my valid password वाली entry मुझे यहाँ पर देखने को मिलनी चाहिए, और यह मुझे दो बार देखने को मिल रही है
6:21
तो एक और बार मैं इसको test करूँगा, my valid password 2 करके, और harry 2 करके
6:26
ठीक है, set करूँगा इसको, जैसे ही आप लोग देखो, यहाँ पर harry 2
6:29
क्या यहाँ पर Harry2 आया view reload data अब यहाँ पर reload किया मैंने data
6:35
और यहाँ पर देखो Harry2 भी आ गया MyValidPassword2 भी आ गया ठीक है क्या मैं इसको दुबारा से send करूँग�
6:40
तो यह दुबारा से चला जाएगा database के अंदर हाँ यार यह तो दुबारा से चला जा रहा ह�
6:43
यहाँ पर एक email की दो-दो entries यहाँ पर मेरे database में बन जा रही है
6:47
आप देखो, email at the rate of mail.com, email at the rate of mail.com
6:52
और यहाँ पर बिल्कुल भी unique email मुझे नहीं देखने को मिल रहा है
6:56
और यह चीज मुझे यहाँ पर fix करनी है, अब यहाँ पर इस चीज को fix करने के लिए मैं क्या करूँग�
7:00
tb.js के अंदर आऊंगा और यहाँ पर सबसे पहले तो specify करूँग�
7:04
एक database मैं i notebook database नाम के एक database के अंदर काम करना चाता हू�
7:09
तो यहाँ पर देखो i notebook का कोई database नहीं है अभी ठीक है रेलोड करूं तब भी नहीं है ठीक है अभी मैं चला दूंगा जब एक बार insert करूंगा तब आपलों को दिखेगा य�
7:18
पर उसके भी अलावा एक चीज और करनी पड़ेगी हमको कि जो हमारा user.js है इसके अंदर मैं क्या करूँग�
7:24
लिखूंगा const user is equal to क्या मैंने user नाम का कोई variable use किय�
7:30
नहीं मैं लिखूंगा mongoose.model ये और उसी के साथ साथ कुछ इस तरह से करूँग�
7:36
और मैं यहाँ पर लिखूंगा user.create indexes ठीक है इससे सारी indexes बन जाएग�
7:43
और अब मैं क्या करूँगा कि जैसे ही request मारूँगा अब देखना है यहाँ पर यहाँ पर देखना error国्षण आएग�
7:48
मैंने मारा एक यहाँ पर यह database सबसे पहले तो create होना चाहिए i notebook हो गय�
7:53
क्या इसके अंदर users के अंदर मेरा यह user आ गया हाँ भाई आ गय�
7:57
इस नाम का यूजर डालना चाहता हूं डाल सकता हूं ठीक है नहीं एरर आ गया देखो यहां पर प्रोसेसिंग दिक्कत होगी नहीं नहीं डाल पा रहा हूं मैं ठीक है तो यह एरर आ गया तो यह चीज मुझे यहां पर जो है चाहिए थी तो अब मैं यहां पर कोई भी डूप response
9:10
लिखूंगा एरर प्लीज एंटर क्या एरर है यूनिक वाल्यू ठीक है फॉर यह मैंने करती है तो अभी यहां प�
9:25
जो प्लीज एंटर यूनिक वाल्यू फॉर ईमेल यूनिक वाल्यू जैसे एंटर कर यहां गया इसको दुबारा से करा प्ली�
9:30
एंटर यूनिक वाल्यू फॉर ईमेल तो इस तरह से जो है आपका बड़ी अच्छी तरह से सारा काम हो गया है ठीक है तो यहा�
9:37
जैसे ही मैं एक वालेड ईमेल डालूंगा, तो यहाँ पर जो है
9:42
यह कुछ इस तरह से आ गया, ठीक है, सो आई होब कि एक बहुत अच्छा एडिया आपको लग दिया
9:46
कि इस तरह से वालिडेशन वगैरा करने है, ठीक है, अब किसी और तरह का भी error आएगा अगर तो आप चाहोगे कि जो ये err वाला message है इसको भी आप दिखा द�
9:54
तो err.message मैं करूँगा मैं एक काम करता हूँ मैं कुछ ऐसे करूँगा err.message ठीक ह�
10:02
और ऐसा करने से क्या होगा कि मुझे एक message भी मिलेग�
10:05
देखो मुझे message भी मिल रहा है क्या दिक्कत आ रही है ठीक है तो यहाँ पर देखो duplicate की error collection
10:10
यह duplicate की अब ideally आप यह नहीं बेजने चाहोगे client क�
10:14
but again मैं आपको बताना चाहता हूँ कि error.message के अंदर आपके error का message आता है, ठीक है
10:19
तो यह काफी अच्छी हद तक हमने validation कर लिया, अब हम user add कर सकते हैं यहाँ पर
10:24
harry2, harry3, harry4 नाम के बहुत सारे users add किये जा सकते हैं
10:28
send किये, यह देखो user add हो गया यहाँ पर, और यहाँ पर भी यह reflect होना चाहिए
10:32
रिफ्रेश करूंगा तो देखो ये सारे का सारे यूजर्स यहाँ पर आ गए हैं सब की email id यहाँ पर unique ह�
10:36
यह चीज नोट करो सब की email id यहाँ पर unique है कोई भी same email id लेकर नहीं बैठा ह�
10:41
वही हम चाहते थे कोई और चीज यूनिक बनानी है वो भी बना सकते हो आप लोग ठीक ह�
10:45
तो I hope कि समझ में आ गई चीज़े आपको और आप ये भी समझ गई कि किस तरह से ये काम करना ह�
10:51
अब ये जो express validator है इसमें आप custom भी validator बना सकते हो अपन�
10:55
ले लिए छोड़ूंगा बहुत ही बेसिक लेवल पर इसको यूज करना था वह मैंने कर लिया ठीक है मैं इसको बंद करूंग�
11:01
अभी ठीक है कि मैंने चाहता कि एक चीज में आप लोग बहुत ज्यादा दिमाग लगा गया अपना टाइम ले जाओ हमारा उद्दे�
11:07
कि हमें एक पावरफुल अप्लीकेशन मना सकें और मैंने चाहता कि यहां पर एक्सप्रेस वगैरह पर हम लोग ज्याद�
11:14
टाइम दें मैं यहां पर बंद कर देता हूं इसको टर्मिनल को अगर आप लोगों ने जो है यह प्लेलिस्ट एक्सेस नही�
11:21
तो कर लो कि आने वाले time में हम लोग और end points बनाएंगे crud end points बनाएंगे user स�
11:27
हम लोग password वगैरा को hash करके save करवाएंगे नेटबी इसके अंदर तो आने वाले videos में बहुत सार�
11:33
काम बाकी हैं तो यहाँ click करके इसको save करें playlist को यहाँ click करके इसको bookmark
11:37
करें अब इके लिए इस वीडियो में इतना है गाइस थैंक यू सो मुझे गाइस वो वाचिंग इस वीडिय�
11:41
और आई वूल सी यू लेक्स्ट ल�