उदाहरण के तौर पर व्यावहारिक वेब आधारित गहन शिक्षा और सुरक्षा

द्वारा Daisy
उदाहरण के लिए व्यावहारिक वेब आधारित गहरी शिक्षा और सुरक्षा तीसरा संस्करण शार्लोट हार्पर 3 जुलाई, 2024 Foreword: वेब के लिए सॉफ्टवेयर बिल्डिंग सॉफ्टवेयर में सुरक्षा विचार किसी भी वेब डेवलपर की योजना और निष्पादन का एक महत्वपूर्ण हिस्सा हैं, जबकि एक प्रोटोटाइप इंजीनियरिंग करते हैं जो व्यावहारिक उद्देश्यों के लिए भरोसेमंद, स्थिर और उपयोगी है। DOM (डॉक्यूमेंट ऑब्जेक्ट मार्कअप), HTML, JavaScript, और CSS के कार्यान्वयन के साथ -साथ बैकएंड सॉफ़्टवेयर के कार्यान्वयन के साथ पायथन, C/C ++, Java और Bash को लागू करना, वेब डेवलपर्स को स्वतंत्रता और शक्ति प्रदान करता है, जो विभिन्न प्रकार की परियोजनाओं को बनाने के लिए व्यक्त करता है। रचनात्मकता, उपयोग और कार्यक्षमता में आसानी प्रदान करें, विनम्रता और चरित्र को चित्रित करें, और उपयोग में आसानी के साथ -साथ सुविधा और महत्वपूर्ण सेवाएं प्रदान करें जो सभी औसत जो के लिए आकर्षक हैं, अंतिम उपयोगकर्ता की तलाश में समय को मारने या इंटरनेट पर कुछ करने के लिए, आमतौर पर एक टचस्क्रीन स्मार्टफोन डिवाइस पर। ज्यादातर लोगों को यह भी नहीं पता होगा कि जब वे एक वेबसाइट बनाना चाहते हैं तो कहां से शुरू करेंस्क्रैच, वे किसी अन्य व्यक्ति की वेबसाइट पर शुरू करते हैं और कार्यक्षमता, निर्भरता, उपयोग में आसानी और विशेष रूप से रचनात्मकता में सीमित कुछ का निर्माण करते हैं, जब वे अपने निपटान में सभी नवीनतम शक्तिशाली उपकरण हो सकते थे ताकि समय को बर्बाद किए बिना कुछ उपयोगी बनाया जा सके। , और विशेष रूप से सॉफ्टवेयर के लिए महंगी सदस्यता के लिए भुगतान करने वाले पैसे बर्बाद करना कुछ लोग वैसे भी उपयोग करना चाहते थे, यह उपयोग और लचीलेपन में आसानी में सीमाएं हैं। यदि आपके पास इस पुस्तक के माध्यम से पढ़ने के लिए कुछ मिनट हैं और सीखें कि मैं आपको क्या सिखाना चाहता हूं, या यहां तक कि मेरे लक्ष्यों के बारे में व्यक्तिगत रूप से बात करें और सही दिशा में कुछ मार्गदर्शन प्राप्त करें, और कोड और अपने स्वयं के सॉफ़्टवेयर को सीखने के लिए प्रेरित हैं। , इस पुस्तक को घर ले जाएं और अगले प्रभावशाली, शक्तिशाली, सुव्यवस्थित और महत्वपूर्ण वेब एप्लिकेशन के निर्माण के लिए सीखने के लिए कुछ समय निर्धारित करें, एक वेबसाइट जो आप पर है और वास्तव में आप चाहते हैं और अपने दर्शकों की जरूरतों को पूरा करते हैं। मेरे बारे में: मैं एक सॉफ्टवेयर डेवलपर हूंC/C ++, जावा, पायथन, HTML, CSS और जावास्क्रिप्ट में अनुभव की सीमा। मैं उन वेबसाइटों का निर्माण करता हूं जो लोग उपयोग करना चाहते हैं, यात्रा करना चाहते हैं, और यहां तक कि केवल सीखने, फिर से बनाने और समय को मारने के लिए उपयोग करने के आदी हो जाते हैं, और सबसे महत्वपूर्ण बात यह है कि मैं सॉफ्टवेयर बेचता हूं। यदि आपके पास एक विचार था कि आप वास्तव में कैसे देखना चाहते हैं और कार्य करना चाहते हैं, तो आप मेरा समर्थन करने के लिए तैयार थे ताकि मैं आपकी जरूरतों को पूरा कर सकूं, जबकि मैं आपसे मिलूं, और आप स्वयं एक वेबसाइट चलाने की लागतों को कवर करने के लिए तैयार हैं, मैं आपको अगला YouTube, Tiktok, Twitter, Google, या यहां तक कि एक उच्च तकनीक वाले सुरक्षा ऐप का निर्माण करूंगा, केवल आप एक्सेस कर सकते हैं। आपको अपना समय बेचने की कोशिश करने के बजाय, मैं आपको खरीदने की कोशिश कर रहा हूं: मैं आपको एक ऐप (वेबसाइट) बनाने में बात करना चाहता हूं, जो पहले से मौजूद जानकारी के साथ खुद को एक स्वतंत्र सॉफ्टवेयर डेवलपर होने की आवश्यकता है। उद्यमी, जो भी आप चाहते हैं, उसमें एक सफल कैरियर का नेतृत्व करते हैं। और मुझे स्पष्ट होना चाहिए, मैं जो शिक्षा आपको दे रहा हूं वह अनौपचारिक होगा। आप स्कूल जा सकते हैं और यह सब एक के साथ सीख सकते हैंऔपचारिक शिक्षा, या यहां तक कि इस पुस्तक को स्कूल में पढ़ें, अपने असाइनमेंट को पूरा करें, और अपनी शिक्षा से बहुत दूर ले जाएं, लेकिन मैं औपचारिक रूप से आपको हॉट सीट पर नहीं डालूंगा और आपको असाइनमेंट पूरा करने के लिए कहूंगा। मैं आपका प्रोफेसर नहीं हूं, आप मेरे बारे में एक ऐसे दोस्त की तरह सोच सकते हैं जो आपको अपनी व्यक्तिगत सफलता द्वारा संचालित कैरियर की ओर मार्गदर्शन करना चाहता है। और मैं आपको सफलता नहीं बेच रहा हूं, आपको इसे अपने समय के साथ खरीदने की आवश्यकता होगी। कोड को सीखने में एक सीखने की अवस्था है और यह कभी भी आसान नहीं था, या यहां तक कि माना जाता है। आपको संभवतः उतनी मेहनत करने की आवश्यकता है जितनी संभव हो सके और कोशिश करना और असफल होना जारी रखें और फिर भी प्रयास करें जब आप खुद को सीखने और बनाने के लिए निराश हैं। यह कोड की प्रकृति में ही है। कोड एक कंपाइलर द्वारा चलाया जाता है जिसे प्रोग्रामर त्रुटि संदेश देने के लिए डिज़ाइन किया गया है, और ये आपको सिखाएंगे कि कैसे कोड करें, भले ही आप अपने खोज इंजन में त्रुटि की नकल कर रहे हों और अन्य लोगों के उदाहरणों को पढ़ रहे हों। और मुझे कहना होगा, आपको बेहद अमीर होने की जरूरत नहीं है, स्मार्ट,एक ऐप बनाने के लिए निबंध, या यहां तक कि विस्तार से उन्मुख या व्यवस्थित। कंप्यूटर आपके लिए उस संगठन की देखभाल करता है। आपको बस परीक्षण और त्रुटि के माध्यम से दृढ़ रहने की आवश्यकता है, ध्यान बनाए रखें और जो आप करते हैं उस पर कड़ी मेहनत करें, और आप जो करते हैं, उसकी संपूर्णता में एक बहुत ही सफल कैरियर होगा। मैं कौन हूं: मुझे एहसास है कि अंतिम खंड सीखने के बारे में अधिक था और इस पुस्तक से आपका एक तरीका है। मैं वास्तव में कौन हूँ? यह एक जटिल प्रश्न है। मैं उस पर स्पष्ट नहीं हूं, क्योंकि मैं चिकित्सा स्थितियों से पीड़ित हूं, जो मेरे लिए कई बार कोड या इस पुस्तक को भी लिखना मुश्किल बना सकता है, जबकि समाजीकरण और पहचान के मुद्दों के साथ चुनौतियां पेश करते हैं जो मेरे जीवन को और अधिक कठिन बनाते हैं जब यह अपना परिचय देने की बात आती है । संक्षेप में, यदि आप इस पुस्तक को पढ़ रहे हैं, तो आप इसे घर ले आए क्योंकि आप इसके माध्यम से फ़्लिप किए और सोचा कि यह उपयोगी था, या यहां तक कि अगर आप अभी तक पढ़ते हैं, तो आप एक ऐसे व्यक्ति की तरह हैं जो आपको सफल होना चाहते हैं सब कुछ जो आप करते हैं। मैं खुद एक इंजीनियर हूं,डेवलपर, और एक छात्र, और मैं इस पुस्तक को अन्य छात्रों के लिए लिख रहा हूं, जो सॉफ्टवेयर की एक हैंडबुक होने से अपने जीवन को आसान बनाना चाहते हैं, उन्हें अपने जीवन को आसान बनाने की आवश्यकता है, जो एक बड़ी पहेली की तरह एक साथ एक साथ काम करने के लिए एक साथ मिलकर अपने जीवन को आसान बनाने की आवश्यकता है। , उपयोगी, बड़े, कार्यात्मक, सामंजस्यपूर्ण और आकर्षक ऐप जो व्यवसाय की रेखा से कोई फर्क नहीं पड़ता, सफलता को चला सकता है। मोटे तौर पर, यह वही है जो मैं करता हूं: मैं अपने आप को और अन्य लोगों की मदद करने के लिए ऐप्स का निर्माण करता हूं। मैं एक लेखक भी हूं, हालांकि यह मेरा पहला प्रकाशन है जिसे मैं अपने पोर्टफोलियो को एक उपयोगी दस्तावेज में एक साथ रखने के लिए पूरा करने का इरादा रखता हूं, और मैं एक कलाकार भी हूं। मैं आपको यह मानता हूँ, मैं एक अजीब व्यक्ति हूँ। मैं सही नहीं हूं, मैंने कानून के साथ INS चलाया है, यहां तक कि मुझे कॉलेजों और विश्वविद्यालयों को छोड़ने के लिए और अधिक सफलता के साथ खुद के लिए एक नाम बनाने की कोशिश करने के लिए राज्यों को छोड़ने के लिए अग्रणी है। मैं जन्म से एक महिला हूं, मैं मेकअप पहनती हूं, खुद की तस्वीरें लेती हूं, कपड़े पहनती हूं, कपड़े और अन्य महिला कपड़े पहनती हूं, और मैं खुद के प्रति सचेत रहती हूंस्वभाव से महिला। मेरे पास अतीत में अन्य लोगों के साथ मुद्दे हैं जो वेबैप लिखने और निर्माण के साथ संघर्ष करते हैं, और मैं माफी मांगता हूं कि मैं इस पुस्तक को आपके हाथों में जल्द ही प्राप्त करने में सक्षम नहीं हूं: आपको इसकी आवश्यकता थी। आप उन कोड को पढ़ना और लिखना चाहेंगे जो मेरा जैसा दिखता है और मेरी तरह काम करता है और एक ही काम करता है, लेकिन इससे भी बेहतर है, क्योंकि अगर आप अपने कीबोर्ड को मैश करने के बजाय इस पुस्तक को खरीद सकते हैं जैसे कि मैं सिर्फ एक किताब बनाने के लिए खुद को पैसे पूछने के लिए करता हूं। इसके लिए, आपके पास ऐसे संसाधन हैं जिन्हें आपको अपने जीवन में सफल होने की आवश्यकता है। मेरे पास परिवार के बड़े होने, स्वास्थ्य की स्थिति, डॉक्टर, मीडिया और कानून के साथ सभी प्रकार के मुद्दे थे, और मेरा कोड उस संघर्ष को गहराई से दर्शाता है जो एक विभाजित और निराश दुनिया में नारीवाद और महिला प्रकृति है। हालाँकि, यह पुस्तक ऐसी चीज है जिसके बारे में मैं गहराई से परवाह करता हूं, मेरे बच्चे, मेरे पोर्टफोलियो और मेरी आजीविका, इसलिए मैं आपके विचार की सराहना करता हूं जब आप पाठ को घर लेते हैं और मुझसे सीखने के लिए ध्यान से उस पर ध्यान से पोर करते हैं। कृपया ध्यान रखें कि मैं नहीं हूंect, इस पुस्तक में त्रुटियां, संशोधन और नए संस्करण होंगे, और आपको अपने तार्किक मस्तिष्क के साथ सोचने की आवश्यकता होगी कि आप मेरे लेखन के साथ एक सफल अनुभव प्राप्त करने के लिए सबसे अच्छा कर सकते हैं। इसके अलावा, यह समझें कि जब आप लिखते समय चुनौतियों का सामना करते हैं, तब भी मेरा मतलब है। इसके बारे में इस तरह से सोचें: जब आप कुछ भी करने के लिए एक कंप्यूटर सिस्टम किराए पर ले सकते हैं, तो आप संभवतः डिजिटल स्पेस में कल्पना कर सकते हैं, आपके द्वारा की गई सभी जानकारी को संग्रहीत कर सकते हैं, #$%! Yze और इसे व्यवस्थित करें, और इसे समझने के लिए, आप करेंगे, आप करेंगे अनिवार्य रूप से उस जानकारी के साथ कठिनाइयों का सामना करना पड़ता है जिसे आप अंतर्ग्रहण कर रहे हैं और यहां तक कि प्रकाशन भी। मैं आपको यह बताता हूं क्योंकि मैं उसी कठिनाइयों का सामना करता हूं। अपने स्वयं के जोखिम पर इस पुस्तक का उपयोग करें, अपने समुदाय और समुदायों के साथ काम करें जो आपके लिए एक सुरक्षित सेटिंग के भीतर सॉफ़्टवेयर बनाने के लिए उपलब्ध है, और जब आप असफल होते हैं या गलत तरीके से सफल होते हैं, तो व्यक्तिगत रूप से चीजों को न लें: यह है कि मुझे यह कैसे मिला है , और क्यों मैं आपको यह पाठ क्यों ला सकता हूं और पागलपन के रास्ते पर बिना किसी विचलन के सफल होने में मदद करता हूंमुझे बर्बाद कर दिया, फटा हुआ और भयावह है, जबकि मैं सामान्य समस्याओं का सामना करता हूं, जो हर कोई वैश्विक स्तर पर करता है, जिस पर हम काम करेंगे, इंटरनेट पर हम काम करेंगे। आप बहुत परिचित नहीं हो सकते हैं कि मैं केवल कुछ शब्दों के साथ कौन हूं, लेकिन मैं आपको पढ़ने के लिए प्रोत्साहित करता हूं, आप मुझे जानेंगे कि आप अपने काम को पूरा करने के लिए अपनी परियोजनाओं का निर्माण करते समय मुझे पढ़ना और समझना जारी रखेंगे। इस पुस्तक के साथ कोई होमवर्क नहीं होगा, जब तक कि आपके प्रोफेसर या शिक्षक आपको कोई भी असाइन नहीं करते हैं, लेकिन मैं आपको खुद को प्रोजेक्ट्स का एक पोर्टफोलियो बनाने के लिए प्रोत्साहित करता हूं जैसा कि आप साथ पढ़ते हैं, साथ ही साथ एक कैपस्टोन प्रोजेक्ट भी दिखाते हैं कि आप कैसे कर सकते हैं जो आपने सीखा है उसे लागू करें। मेरी कैपस्टोन प्रोजेक्ट इस पुस्तक में जो कुछ भी आप पढ़ेंगे, उसमें से अधिकांश के लिए आधार है, क्योंकि इसमें मेरी पिछली परियोजनाओं, कोड को शामिल किया गया है, जिसे मैंने बनाया है और हाथ से व्यवस्थित रूप से लिखना सीखा है, और विचारों और युक्तियों की एक विस्तृत श्रृंखला जिसने मुझे मदद की है। उस बिंदु पर सफल हो जहां मैं एक साधारण ऐप को स्पिन कर सकता हूंपूरी तरह से चित्रित किया गया है और एक लोकप्रिय ऐप की तरह दिखता है और व्यवहार करता है जिसे आप अपने दोस्त या परिवार को इंटरनेट पर उपयोग करते हुए देख सकते हैं, आपको या समाचार में विज्ञापित कर सकते हैं। यह पुस्तक क्या है: यह पुस्तक उदाहरण के लिए एक ट्यूटोरियल है। आप यहां कोड पा सकते हैं, कोड को कैसे सीखें, डिबगिंग कोड की जानकारी और त्रुटियों को ठीक करने के लिए निर्देश, समस्या निवारण चरणों, अपने कोड को वापस कैसे सहेजें और फिर से तैनात करें, यदि कोई भी आपके कोड को तोड़ता है, तो अपने कोड को सुरक्षित करें, तैनात करें। आपका कोड, इंटरैक्टिव वेबसाइटों का निर्माण करें जो मनोरंजक, आकर्षक और नशे की लत हैं, और आपको यह समझ में आएगा कि मैं कौन हूं, क्यों महत्वपूर्ण है, और अपने आप को, अपने ऐप और कंपनी की छवि को कैसे चित्रित करें, साथ ही साथ आपके अंतिम उपयोगकर्ताओं, आपकी वेबसाइट के आगंतुकों के लिए संभव के रूप में सबसे आकर्षक होने के लिए आप जो सॉफ़्टवेयर का निर्माण करते हैं, वह सबसे अच्छा प्रकाश में बनता है। इस पुस्तक में, मैं एक प्लेटफ़ॉर्म के साथ -साथ सुरक्षा के रूप में वेब पर ध्यान केंद्रित करने के साथ सॉफ्टवेयर डिजाइन के कई उदाहरणों का प्रदर्शन करूंगा। हम एक बुनियादी निर्माण करके सीखने के अनुभव को शुरू करेंगेबैकअप और स्क्रिप्टिंग सुविधाओं के साथ यूनिक्स शेल का उपयोग करके ओजेक्ट करें। फिर, हम एक बुनियादी ब्लॉग वेबसाइट की जांच करेंगे, हमारे ब्लॉग को फोटो और वीडियो सुविधाओं के साथ अपग्रेड करेंगे और साथ ही इन सुविधाओं का उपयोग मुफ्त सॉफ्टवेयर का उपयोग करके सुरक्षा समाधानों को नियोजित करने के लिए करेंगे, और एक प्लग करने योग्य प्रमाणीकरण मॉड्यूल (PAM) का उपयोग करके हमारे सर्वर को सुरक्षित करेंगे। फिर हम अन्य अवधारणाओं के बीच वीडियो एडिटिंग, वॉयस डोनेशन, बारकोड स्कैनिंग और ऑप्टिकल कैरेक्टर रिकग्निशन की खोज करते हुए फाइल हैंडलिंग और प्रोसेसिंग की समीक्षा करेंगे। जिस तरह से हम एपीआई की जांच करेंगे, जो हमें अपने सॉफ़्टवेयर को मुफ्त और भुगतान किए गए विकल्पों के साथ अधिक उपयोगी और सुरक्षित बनाने में मदद करेगा। जिस तरह से, हम भौतिक सुरक्षा और आतंकवादी उपकरणों जैसे कि आग्नेयास्त्रों और मुनिशन डिजाइन और विनिर्माण जैसे बैरल और रिपीटर डिजाइन, बुर्ज और ड्रोन डिजाइन, और अन्य प्रिंसिपल शामिल हैं, जो हम अपने सॉफ़्टवेयर की सुरक्षा के लिए मौजूदा नेटवर्क पर अपने सॉफ़्टवेयर के साथ एकीकृत करेंगे। और आत्मरक्षा और प्रतिद्वंद्वी को प्रदर्शित करता है। हम गेम, 2 डी और 3 डी के निर्माण के रास्ते में ब्रेक लेंगेइंजन एंडिंग इंजन, और बुनियादी आयामी रेंडरिंग सॉफ्टवेयर के केस स्टडी उदाहरणों में एम्बेडेड हार्डवेयर के साथ काम करें और क्रमशः सिलिकॉन रबर में एक इलेक्ट्रॉनिक वाइब्रेटिंग मालिश कास्ट। जिस तरह से, हम अपने सॉफ़्टवेयर को बेहतर ढंग से सुरक्षित करने के लिए पहले से ही उपलब्ध मशीन लर्निंग सॉल्यूशंस को भी नियोजित करेंगे। हम प्रक्रिया को सुव्यवस्थित और सुरक्षित करने के लिए वेब के लिए उपलब्ध स्टॉक टूल भी लगाएंगे। यह पुस्तक एक वेब एप्लिकेशन के निर्माण में आपकी सफलता के लिए एक मार्गदर्शिका है और इसे कंप्यूटर और एम्बेडेड मैकेनिकल सिस्टम के एक पेशेवर नेटवर्क के साथ एकीकृत करना है, और कुल मिलाकर सॉफ्टवेयर बनाने के लिए एक गाइड और कोई पृष्ठभूमि ज्ञान या पिछले अनुभव के साथ हार्डवेयर एम्बेडेड है। यह पुस्तक क्या नहीं है: यदि आप वास्तव में एक वेबसाइट चाहते हैं, तो आप बस एक साधारण स्टोर सेट कर सकते हैं और जो आपको चाहिए, उसे बेच सकते हैं, एक ब्लॉग पोस्ट करें, फ़ोटो या वीडियो पोस्ट करें, या अन्यथा कभी भी एक ही लाइन कोड लिखे बिना। यह पुस्तक वह नहीं है। यह पुस्तक आपको सिखाएगी कि कैसे सॉफ्टवेयर का निर्माण किया जाए जो अधिक उपयोगी हो, पूरी तरह सेकिसी भी सॉफ़्टवेयर की तुलना में विशेष रूप से, कार्यात्मक और सुरक्षित, जिसे आप पहले से ही पा सकते हैं, क्योंकि यह नवीनतम सॉफ़्टवेयर को तैनात करता है जो अभी भी प्रोटोटाइप है, एक पैमाने पर चलने वाली पुरानी कंपनियों पर चलाने के लिए महंगा हो सकता है, और पीछे की ओर अपील नहीं करता है, कन्ट्रॉल्यूटेड कंपनियों को स्थापित किया गया है। उन लोगों के लिए पैसा कमाएं जो वास्तव में कुछ भी नहीं कर रहे हैं। यदि आप इस पुस्तक का बारीकी से पालन करते हैं, तो आप कोड, रिसर्च कोड लिखना चाहेंगे, अपने स्वयं के ऐप्स का निर्माण करेंगे, और आप जो करते हैं उससे पैसे कमाएंगे। मैं इस पुस्तक से पैसे कमाऊंगा, यहां तक कि शुरुआती चरणों में भी, क्योंकि इसमें उन जानकारी शामिल हैं जिन्हें लोगों की आवश्यकता है और पढ़ना चाहते हैं, और पहले से ही खरीद रहे हैं जब वे मेरे ऐप्स खरीदते हैं या उपयोग करते हैं। यह पुस्तक आपके लिए एक ऐप का निर्माण नहीं करेगी, लेकिन यह आपको सही दिशा में इंगित करेगा और आपको उन उपकरणों के साथ बांटना होगा जिनकी आपको आवश्यकता है और कौशल और युक्तियां जो वेब के लिए सॉफ्टवेयर बनाने में आपकी खुद की सफलता की सुविधा प्रदान करेंगे, हर पंक्ति के साथ कोड आपको एक उदाहरण के रूप में लिखने की आवश्यकता होगी, आप सॉफ्टवेयर और आपके समर्थकों, मेहमानों, ग्राहक में एक साथ एक साथ तैयार होने के लिए तैयार हैं,Riends, परिवार, आगंतुक, ठेकेदार, और इंटरनेट के लोग उपयोग और समर्थन करना चाहते हैं। आप क्या सीखेंगे: यह पुस्तक आपको सिखाएगी कि कैसे सॉफ्टवेयर, वास्तव में कार्यात्मक, उपयोगी सॉफ़्टवेयर, मीडिया रिकॉर्डिंग, चेहरे की पहचान, मशीन पठनीय ज़ोन बारकोड स्कैनिंग, वेब एपीआई को प्रमाणित करने, रिकॉर्ड और रेंडर करने के लिए वीडियो और फ़ोटो, और ब्लूटूथ जैसे संदेशों का आदान -प्रदान करने के लिए सुरक्षा सुविधाएँ कैसे सिखाएगी। और क्षेत्र (NFC) संचार के पास। यह पुस्तक आपको सिखाएगी कि कैसे एक नेटवर्क कंप्यूटर का उपयोग करें, डेबियन लिनक्स पर ध्यान केंद्रित करते हुए, अपने सॉफ़्टवेयर को एक सीमलेस, स्वचालित ब्रीज़ को स्थापित करने और बैकअप देने के लिए बैश कोड का निर्माण कैसे करें, कैसे डायनेमिक मैसेज, स्टाइल की सेवा के लिए पायथन कोड का निर्माण करें। बूटस्ट्रैप के साथ सीएसएस शैलियों का उपयोग करना अच्छी तरह से चीजें, नेटवर्क डिवाइस के माध्यम से उपयोगकर्ता लॉगिन और अन्तरक्रियाशीलता को सक्षम करें, अन्य वेबसाइटों के साथ इंटरैक्टिव मीडिया और नेटवर्क का निर्माण करें, जो सत्यापन या अन्य के लिए पाठ संदेश जैसी सुरक्षा सुविधाओं की पेशकश करते हैं उद्देश्य, आईडी स्कैनिंग, छवि और वीडियो मॉडरेशन, डेटाअपने सॉफ़्टवेयर को सुरक्षित रखने, भुगतान प्रसंस्करण, क्रिप्टोक्यूरेंसी ट्रेडिंग, एसिंक्रोनस कार्यों और बहुत कुछ रखने के लिए। आप सीखेंगे कि बैटरी, चार्जर्स, माइक्रोकंट्रोलर, सर्किट, मोटर्स और सेंसर के साथ, सोल्डर, वायर और 3 डी प्रिंट के साथ -साथ कास्ट सामग्री का उपयोग करके अपने स्वयं के ब्लूटूथ डिवाइस का निर्माण कैसे करें। मैं एडिटिव मैन्युफैक्चरिंग और टूल और डाई मेकिंग पर लागू 3 डी डिज़ाइन प्रिंसिपलों को प्रदर्शित करूंगा, इसलिए आप एकीकृत बैटरी, चार्जर, इलेक्ट्रॉनिक सर्किट और कार्यात्मक आउटपुट के साथ अपने स्वयं के एम्बेडेड, हार्डवेयर डिवाइस का निर्माण करने में सक्षम हैं। और उन्हें ब्लूटूथ और वेब के साथ नेटवर्क करें। विशेष रूप से, हम दो केस स्टडीज, एक वाइब्रेटिंग मसाज और एक होममेड बन्दूक की जांच करेंगे, दोनों ओपनकैड में प्रोग्राम किए गए हैं, जो कि ग्राफिकल इंटरफ़ेस या कमांड लाइन यूटिलिटी के रूप में उपलब्ध है और इसे तेज परिणाम के लिए एक वेब में एकीकृत किया जा सकता है। आप सीखेंगे कि बिना किसी पूर्व अनुभव के जमीन से एक वेबसाइट का निर्माण और तैनात कैसे करें, इसे कार्यात्मक, सुरक्षित, सुंदर, उपयोगी और सबसे अधिक बनाएंmportately व्यावहारिक। आप सीखेंगे कि साइट को सुरक्षित और अधिक व्यावहारिक बनाने के लिए मशीन लर्निंग और कंप्यूटर विजन का उपयोग कैसे करें, अपनी वेबसाइट से अधिक व्यावहारिक, रिकॉर्ड वीडियो और ऑडियो को रिकॉर्ड करें, अपनी आवाज दान करें, संगीत बनाएं और उपयोगी नमूने बनाने के लिए ऑडियो को मॉड्यूलेट करें, और कैसे शोर के माध्यम से तोड़ना करें वेबसाइटों के सर्वोत्तम संभव नेटवर्क का निर्माण करने के लिए अन्य वेबसाइटों का लाभ उठाना, जिन्हें आप अपने द्वारा पेश की जाने वाली सभी उपयोगी जानकारी को साझा करने के लिए सीधे अपने से लिंक कर सकते हैं, और इससे भी महत्वपूर्ण बात यह है कि लोगों को आपके सॉफ़्टवेयर और व्यवसाय में लाएं। इस पुस्तक को मीडिया, सुरक्षा और मशीन लर्निंग पर सबसे अधिक ध्यान केंद्रित किया जाएगा, जो प्रमुख तीन घटक हैं जो आपको सही उपयोगकर्ताओं को उलझाकर वेब के लिए उपयोगी सॉफ़्टवेयर बनाने और गलत लोगों को इस तरह से विघटित करने में मदद करेंगे जो यथार्थवादी, व्यावहारिक, व्यावहारिक है, हाथ पर और आकर्षक, जबकि स्वचालित, और मजबूत भी। यह पुस्तक यूनिक्स, विशेष रूप से डेबियन (उबंटू), बैश शेल, पायथन, एचटीएमएल, सीएसएस, जावास्क्रिप्ट और कई उपयोगी सॉफ्टवेयर पैकेजों के लिए सिखाती हैn अनुरोधों की तरह, साथ ही साथ GIT और FFMPEG जैसे उपयोगी बैश सॉफ्टवेयर। मैं आपको यह भी सिखाऊंगा कि क्रिप्टोक्यूरेंसी को स्वचालित रूप से कैसे व्यापार किया जाए, और क्रिप्टोक्यूरेंसी में या नियमित डेबिट कार्ड से भुगतान किया जाए, जबकि आप अपने आगंतुकों को अपने राजस्व का एक हिस्सा भी भुगतान करते हैं यदि आप ऐसा करना चुनते हैं। मैं आपको सिखाऊंगा कि कैसे विज्ञापन के माध्यम से अपनी वेबसाइट से पैसे कमाएं, कैसे खोज इंजन के लिए अपने ऐप को तैयार करें और इसे तेजी से बनाएं, पहली रैंकिंग में रैंक किया गया है कि आपके ग्राहक आपको खोजने के लिए क्या खोजेंगे, और कई सामान्य रूप से रैंकिंग संभव के रूप में खोज। मैं आपको सिखाऊंगा कि आप अपने सॉफ़्टवेयर को कैसे बेचें, इसका विज्ञापन करें, अपनी सेवाओं की तलाश करने वाले ग्राहकों से अपील करें, और पहले से मौजूद रास्ते में इंटरनेट पर अपने लिए एक नाम बनाएं, जो पहले से मौजूद हैं, सस्ती हैं, और अच्छी तरह से काम करते हैं। मैं आपको सिखाऊंगा कि आपके डेटा को क्लाउड कंप्यूटरों पर कैसे सहेजा जाए जो आपके लिए काम करते हैं और आपके डेटा को सस्ते में सहेजते हैं, कैसे योजना बनाएं और एक ऐसी वेबसाइट का निर्माण करें जो आपके उपयोगकर्ताओं को क्या चाहते हैं और आप क्या चाहते हैं, और अपने उपयोगकर्ताओं को कैसे संलग्न रखेंअपनी साइट को उनके फोन पर एक टैप दूर करें, जिसमें सूचना, ईमेल, पाठ संदेश, फोन कॉल, और अधिक रास्ते हैं, जो आपके उपयोगकर्ताओं को आपकी वेबसाइट पर वापस लाने के लिए आपके पास ही सुरक्षित एक बटन के क्लिक के पीछे अपने निपटान में हैं। यह पुस्तक बड़ी मात्रा में मीडिया को प्रकाशित करने और वितरित करने की व्यावहारिकता पर ध्यान केंद्रित करेगी, पाठ से लेकर फ़ोटो से लेकर वीडियो तक ऑडियो तक, अंतिम उपयोगकर्ताओं (आपके ग्राहक) पर एक अच्छी छाप बनाती है, और अपने आप को किसी भी तरह से बेचना है जो आप बनाने के लिए करते हैं। एक वेबसाइट, एक ऐप जो आपके और आप का प्रतिनिधि है, और आपको, आपके सॉफ़्टवेयर और आपकी कंपनी को सबसे अच्छे तरीके से अच्छा लगता है। आप मेरे साथ कुछ टिप्स और ट्रिक्स भी सीखेंगे, कोडिंग टिप्स, मेकअप और फोटोग्राफी, मॉडलिंग और अभिनय जैसे व्यावहारिक घमंड से, और अधिक, जो उपलब्ध सभी उपकरणों का उपयोग करके अपने और आपकी कंपनी को सबसे अच्छा संभव प्रकाश में चित्रित करने के लिए महत्वपूर्ण होगा। आपके लिए उतनी ही सामग्री वितरित करते समय जितना आपको अपने लाने के लिए प्लेटफार्मों के एक स्वस्थ संतुलन की आवश्यकता होती हैई अधिक प्रयास, काम, या धन के साथ आवश्यक से अधिक नहीं है। इस पुस्तक को एक कारण के लिए "प्रैक्टिकल वेब आधारित डीप लर्निंग एंड सिक्योरिटी बाय उदाहरण" कहा जाता है: यह कोड को सीखने से संबंधित है, विशेष रूप से वेब के लिए, विशेष रूप से सुरक्षा पर ध्यान केंद्रित करने के साथ, एक व्यावहारिक दृष्टिकोण से, कार्य कोड के उदाहरणों के साथ जो कार्य करता है। पाठ में उल्लिखित व्यावहारिक उद्देश्य। इस पाठ के सीखने के घटक में मशीन लर्निंग भी शामिल है, कोड मैं आपको दिखाएगा कि वेब के लिए कैसे चलाना है जो कंप्यूटर विजन, चेहरे की पहचान, छवि और वीडियो मॉडरेशन, छवि वृद्धि, संकल्प वृद्धि, संकल्प वृद्धि, छवि कैप्शनिंग और अन्य कार्यों को संभालेगा। भविष्यवाणी मेट्रिक्स छवियों से खट्टा है, जैसे कि एक प्रामाणिक, कंप्यूटर-स्थानांतरित छवि, या एक ऑप्टिकल कॉपी (एक छवि की एक तस्वीर, या मुद्रित फोटो) के रूप में छवि की प्रकृति। जब वेब सुरक्षा और सॉफ्टवेयर सुरक्षा की बात आती है, तो मशीन लर्निंग बहुत महत्वपूर्ण है, क्योंकि यह उन कार्यों को लागू कर सकता है जो अन्यथा असंभव थे। आपका कंप्यूटरआपको पासकोड के साथ लॉग इन करें, लेकिन यदि यह आपके चेहरे के साथ लॉग इन करता है तो इसका उपयोग करना सुरक्षित हो सकता है। आप एक सर्वर कंप्यूटर को यह सुरक्षित बना सकते हैं, एक कंप्यूटर जो सामान्य रूप से आपको एक उपयोगकर्ता नाम और पासकोड के लिए पूछेगा और आपको लॉग इन करेगा, शायद प्रत्येक नए लॉगिन या नए आईपी पते के लिए एक पुष्टि टोकन के साथ, लेकिन यदि आप बड़े पैमाने पर निर्माण कर रहे हैं, तो आसान है। उपयोग, मौलिक रूप से सुरक्षित और शक्तिशाली सॉफ्टवेयर, यह पर्याप्त हो सकता है। अपने सॉफ़्टवेयर को किसी और के सॉफ़्टवेयर से बहुत करीब से बांधना, जैसे ईमेल सेवा या पाठ संदेश सेवा, आपके सॉफ़्टवेयर को सुरक्षित करने के लिए पर्याप्त नहीं है, या किसी को भी (आपके द्वारा उपयोग की जाने वाली कोई भी साइट)। जो कोई भी सॉफ्टवेयर बनाता है, वह जो त्रुटिहीन रूप से सुरक्षित है, उसे कुछ समझ में आता है। सॉफ्टवेयर स्वाभाविक रूप से असुरक्षित है क्योंकि हम जिन उपकरणों और खातों का उपयोग करते हैं, वे हमेशा हमारे निपटान में नहीं होते हैं, वे सॉफ्टवेयर के लिए बीमार इरादे वाले किसी भी व्यक्ति के हाथों में हो सकते हैं और इसलिए सॉफ्टवेयर के लिए जोखिम पैदा कर सकते हैं। यह इस पुस्तक का ध्यान केंद्रित है। एक नेटवर्क कंप्यूटर डिफ़ॉल्ट रूप से हैएक लंबी कुंजी टोकन के साथ सुरक्षित, कहा जाता है और SSH या सुरक्षित शेल कुंजी, और अन्यथा एक वेब सर्वर के साथ सबसे अच्छा सुरक्षित है, क्योंकि वेब सर्वर ओपन एक्सेस के साथ -साथ सर्वर पर चलने वाले कला सुरक्षा उपकरणों की स्थिति प्रदान करता है। वेब सर्वर के पास उपयोगकर्ता के वेब ब्राउज़र तक पहुंच है, जो यकीनन उपयोगकर्ता के डिवाइस का सबसे शक्तिशाली हिस्सा है, क्योंकि यह वह स्थान है जहां उपयोगकर्ता नेटवर्क सॉफ़्टवेयर तक पहुंच सकता है। यह टूलकिट पाठ को प्रस्तुत कर सकता है, आपके द्वारा देखे जाने वाले वेबपेज, और छवियों, ऑडियो और वीडियो (जैसे कि एक चेहरे या एक राज्य आईडी की तस्वीर) को रिकॉर्ड कर सकते हैं, ब्लूटूथ रेडियो उपकरणों को पढ़ और लिख सकते हैं, और पास फ़ील्ड को पढ़ और लिख सकते हैं। ट्रांसपोंडर टैग, सस्ती कुंजी कार्ड, एफओबी, स्टिकर, रिंग्स और यहां तक कि चिप प्रत्यारोपण अद्वितीय सीरियल नंबरों के साथ जिन्हें वेब साइट से बंधे वेब सर्वर द्वारा उत्पन्न और मान्य डेटा के साथ पढ़ा और लिखा जा सकता है। अपने निपटान में सभी उपकरणों का उपयोग करते हुए, इस पुस्तक के साथ आप खुद को एक सुरक्षित वेबसाइट बनाने के लिए ज्ञान से लैस करेंगे, और कुल मिलाकर एURE नेटवर्केड कंप्यूटर सिस्टम जो आपके लिए काम करता है, आपकी बोली लगाता है, और सही लगता है और लगता है। कहां से शुरू करें: आप उस खंड को छोड़ने के लिए स्वागत करते हैं, जिसे मैं इस पुस्तक के साथ शुरू करता हूं, या किसी भी खंड के साथ, सटीक कोड के लिए, विशेष रूप से यदि आपके पास पहले या उपरोक्त उपकरणों में से किसी के साथ कोडिंग के साथ अनुभव है, तो मैं इस पुस्तक में विस्तार से वर्णन करूंगा। साथ ही उपयोग के मामलों और व्यावहारिक उदाहरणों का दस्तावेजीकरण। यदि आपके पास कोड लिखने में अनुभव नहीं है, तो मैं आपको इस पुस्तक के सभी को पढ़ने की सलाह देता हूं, और विशेष रूप से आपको पिछले अनुभागों को पढ़ने की सलाह देता हूं, यह सुनिश्चित करने के लिए कि यह पुस्तक आपके लिए सही है। यदि यह पुस्तक आपके लिए सही नहीं है, तो इसे किसी मित्र या रिश्तेदार को उपहार में देने पर विचार करें, जो स्वयं वेब विकास के बारे में जानने में रुचि रखते हैं, और यहां तक कि इसे वापस उधार लेने पर विचार करें और उनसे सीखने के लिए कि वे अंतराल को भरने के लिए जहां मैं आपको विफल कर देता हूं शिक्षक, या अन्य शिक्षकों ने मेरे सामने किया। यदि आप एक उपयोगी बनाने का इरादा रखते हैं, तो आप जहां करेंगे, इस पुस्तक का हर हिस्सा उपयोगी होगापीपी, और विचार करें कि सबसे अच्छे ऐप्स को अंतिम उपयोगकर्ता को ध्यान में रखते हुए बनाया गया है: अपने ग्राहक को जानें। अब आप मुझे जानते हैं, आप इस पुस्तक को जानते हैं, और आप शुरू करने के लिए तैयार हैं। शुरू करने के लिए, एक कंप्यूटर को पकड़ो (यहां तक कि एक बॉक्स स्टोर, अमेज़ॅन, या एक पुराने डेस्कटॉप से सबसे सस्ता लैपटॉप काम करता है, और इसे एक तरह से सेट करें जो आपके लिए काम करता है। इस पुस्तक को कैसे पढ़ें: पाठ पर प्रकाश डाला गया, यह दर्शाता है कि पाठ एक कमांड प्रॉम्प्ट में है, जहां आप आपके द्वारा चलाए गए कोड को लिखेंगे। कमांड प्रॉम्प्ट भारी कीबोर्ड पर केंद्रित है और इसके लिए कोई क्लिक करने की आवश्यकता नहीं है, अपने वर्कफ़्लो को तेज करना और चीजों को आप पर आसान बनाना है। शुरू करना: चलो गोता लगाते हैं। हम एक स्थानीय मशीन पर कोड का निर्माण शुरू करेंगे और इंटरनेट से जुड़ी वेबसाइट के निर्माण के बिना शुरू करेंगे। यह शुरू करने के लिए सुरक्षित है, कुछ भी नहीं है, और आपके लिए आसान है। आपके ऑपरेटिंग सिस्टम के आधार पर, बैश शेल में शामिल होना थोड़ा अलग होगा। मैक ओएस के लिए, मैं इस बिंदु पर एक वर्चुअल मशीन स्थापित करने की सलाह देता हूं, क्योंकि आपको सबसे अधिक अनुकूलता मिलेगीवर्चुअल मशीन। वर्चुअलबॉक्स और पैरालेल जैसे विभिन्न प्रदाता आपके लिए एक वर्चुअल मशीन चला सकते हैं, हालांकि मशीन पर सीधे उबंटू को स्थापित करना भी संभव है, यदि आप एक देशी वातावरण का उपयोग करना पसंद करते हैं जो एक तेज, सुव्यवस्थित अनुभव बनाने के लिए अनुशंसित है। यदि आप लिनक्स या विंडोज का उपयोग कर रहे हैं, जो मैं सुझाता हूं, तो एक प्रोजेक्ट बनाना काफी आसान होना चाहिए। अपने टर्मिनल को खोलें, जैसा कि आप फिट देखते हैं, आकार को समायोजित करें, और चरण 2 का अनुसरण करें। यदि आप विंडोज का उपयोग कर रहे हैं, तो कृपया चरण 1 का पालन करें। चरण 1: - विंडोज उपयोगकर्ता केवल विंडोज में, व्यवस्थापक और टाइप के रूप में कमांड प्रॉम्प्ट ओपन wsl -install चरण 2: - यहां जारी रखें, या यदि आप विंडोज का उपयोग नहीं कर रहे हैं तो यहां चरण 1 को छोड़ दें एक खुले टर्मिनल में, (आपके ओएस पर निर्भर करता है, जिसे विंडोज में उबंटू कहा जाता है, मैक या लिनक्स में टर्मिनल, या एक समान नाम), एक प्रोजेक्ट बनाकर शुरू होता है। हम इसे MKDIR कमांड के साथ करते हैं, जो एक निर्देशिका बनाता है। यदि आपको अपनी परियोजना को संग्रहीत करने के लिए एक निर्देशिका बनाने की आवश्यकता है, जो अनुशंसित है, का उपयोग करेंसीडी कमांड को निर्देशिका में बदलने के लिए और और CD/PATH/TO/DIRECTORY - पथ फ़ोल्डर (फ़ाइलें) है जो आपकी गंतव्य निर्देशिका से पहले है, आपका डिफ़ॉल्ट पथ ~ या/होम/उपयोगकर्ता नाम है (जहां उपयोगकर्ता नाम आपका उपयोगकर्ता नाम है)। डिफ़ॉल्ट निर्देशिका में बदलने के लिए, सीडी या सीडी टाइप करें ~ MKDIR उदाहरण - निर्देशिका के नाम के साथ "उदाहरण" को बदलें अब आपके पास अपनी परियोजना के लिए एक कार्यशील निर्देशिका है। इस निर्देशिका को सहेजना इतना महत्वपूर्ण है कि यदि आपको एक अलग मशीन पर स्विच करने या आपके द्वारा लिखे गए कोड को तैनात करने की आवश्यकता है, तो यह वेब के लिए तैयार है, हम अगले कुछ चरणों में अपनी निर्देशिका का बैकअप लेने के लिए एक स्क्रिप्ट का निर्माण करेंगे। लेकिन एक स्क्रिप्ट का निर्माण थोड़ा कोड लेता है, और कोड को यथासंभव उपयोगी होने के लिए स्वचालित करने की आवश्यकता है। तो आइए पहले स्क्रिप्ट बनाने के लिए एक स्क्रिप्ट का निर्माण करें। आइए स्क्रिप्ट बनाकर और इसे निष्पादन योग्य बनाकर शुरू करें। हम सूडो का उपयोग करेंगे, CHMOD और इसके लिए स्पर्श करेंगे, और स्क्रिप्ट को कॉल करेंगे
sudo touch /usr/bin/ascript
sudo chmod a+x /usr/bin/ascript
sudo nano /usr/bin/ascript
अब हमने स्क्रिप्ट बनाई है, इसे निष्पादन योग्य बना दिया है, और इसे संपादित करने के लिए तैयार हैं। नैनो एक पाठ संपादक है जो आपको बिना क्लिक किए पाठ को संपादित करने देगा, जो कि ग्राफिकल यूजर इंटरफेस का उपयोग करने की तुलना में बहुत आसान है। नैनो के साथ एक फ़ाइल को संपादित करने के लिए, नैनो और फिर फ़ाइल के लिए मार्ग का उपयोग करें। एक स्क्रिप्ट बनाने के लिए जो एक स्क्रिप्ट बनाती है, यह हमारी स्क्रिप्ट को पहले स्थान पर बनाने के समान है। हम ऊपर के रूप में उसी कोड का उपयोग करेंगे, स्क्रिप्ट के नाम की जगह, एक तर्क पैरामीटर, $ 1 के साथ "Ascript"। यह हमें केवल SUDO Ascript Newscript टाइप करके स्क्रिप्ट को कॉल करने देता है, जिस बिंदु पर हम आपकी स्क्रिप्ट के नाम के साथ "न्यूज़स्क्रिप्ट" को बदलकर कोई भी नई स्क्रिप्ट बना सकते हैं। नैनो में कोड की तरह दिखना चाहिए:
sudo touch /usr/bin/$1
sudo chmod a+x /usr/bin/$1
sudo nano /usr/bin/$1
और नैनो को बंद करने के लिए, हम नियंत्रण कुंजी को पकड़ सकते हैं और x को दबा सकते हैं, फिर y को निरूपित करने के लिए हम फ़ाइल को सहेज रहे हैं, और रिटर्न हिट कर रहे हैं। अब एक स्क्रिप्ट को संपादित करने के लिए इन तीन कमांडों को टाइप करने के बजाय, हम स्क्रिप्ट को फिर से संपादित करने के लिए सूडो Ascript Ascript टाइप करने में सक्षम होंगे। यह सही है! और किसी भी नई स्क्रिप्ट को शेल में कॉल करके आसानी से चलाया जा सकता है। आइए अब हमारे काम को सहेजें: आइए हमारी नई स्क्रिप्ट को बचाने के लिए एक बैकअप स्क्रिप्ट लिखें और फिर इसे हमारी प्रोजेक्ट डायरेक्टरी में वापस करें, जबकि बैकअप स्क्रिप्ट का बैकअप लें।
sudo ascript backup
अब, नैनो में:
sudo cp /usr/bin/backup /path/to/directory/
sudo cp /usr/bin/ascript /path/to/directory/
MKDIR के साथ आपके द्वारा बनाई गई परियोजना का मार्ग कहां/पथ//निर्देशिका है। बाद में हम सीखेंगे कि एक लूप और एक सूची के साथ इस तरह की दोहराव वाले रास्तों को कैसे कॉपी किया जाए, जो कम कोड है, लेकिन अब आइए इसे सरल रखें और कुछ लाइनें हों। इस स्क्रिप्ट को चलाने और अपने कोड को बैकअप करने के लिए, फाइल को नैनो में कंट्रोल+x, y और रिटर्न के साथ सहेजें, और नीचे अपने शेल में टाइप करें
backup
यदि आपको इस पुस्तक को पढ़ते समय और शेल में अनुसरण करते समय एक पासवर्ड के लिए संकेत दिया जाता है, तो कृपया अपना उपयोगकर्ता पासवर्ड सही ढंग से दर्ज करें, कमांड को फिर से चलाने से पहले आपको तीन कोशिशें होंगी। आप ऊपर और नीचे तीर का उपयोग कर सकते हैं और उन्हें संपादित करने और उन्हें संपादित करने के लिए, क्या आपको दो बार कुछ भी चलाने की आवश्यकता है। सिंपल प्रेस अप और डाउन रुक -रुक कर एक कमांड का चयन करने के लिए, कमांड को दाएं, बाएं तीर के साथ संपादित करने से पहले और कीबोर्ड के साथ -साथ कीबोर्ड को हटा दें, और इसे रिटर्न के साथ चलाएं।
बधाई हो! आप एक भयानक बैकअप स्क्रिप्ट बनाने में कामयाब रहे, जो अपने कार्यशील निर्देशिका में दो महत्वपूर्ण शेल स्क्रिप्ट का समर्थन करती है। हम बाद में चीजों को स्थानांतरित कर सकते हैं क्योंकि परियोजना बड़ी हो जाती है, लेकिन यह अभी के लिए काम करता है। चलो क्लाउड में बैकअप लेने के लिए आगे बढ़ते हैं, हम इसके लिए GitHub का उपयोग करेंगे (हालांकि बैकअप के लिए कई अन्य Git समाधान हैं, वे सभी एक ही हैं।) Git एक Version Control सॉफ्टवेयर है जो आपको अपने संपादन को वापस करने देता है सॉफ्टवेयर के रूप में आप उन्हें एक सर्वर के लिए बनाते हैं, जबकिइसके अलावा आपको पासवर्ड या कुंजी के पीछे अपने सॉफ़्टवेयर की पूरी प्रतियां डाउनलोड करने में सक्षम हैं। यह आपके सॉफ़्टवेयर को बचाने में महत्वपूर्ण है, विशेष रूप से जब हम सुरक्षित लिनक्स उदाहरणों में माइग्रेट करते हैं, जो कभी -कभी तब टूट जाते हैं जब कोड की एक लाइन विफल हो जाती है, तो आपको लॉक कर दिया जाता है, जबकि आपका कोड वापस नहीं किया जा सकता है यदि आपको इसे वापस करने का मौका नहीं मिलता है स्वचालित रूप से, जिसे हम कवर करेंगे।
यदि आप पहले से ही इस बिंदु पर एक Ubuntu वर्चुअल मशीन का उपयोग नहीं कर रहे हैं, तो मैं इस बिंदु पर एक Ubuntu वर्चुअल मशीन का उपयोग कर सकता हूं क्योंकि यह एक काम करने वाली वेबसाइट बनाने और गहरी सीखने के लिए आवश्यक सभी पैकेजों को स्थापित करते समय आपके जीवन को आसान बना देगा। आपके कंप्यूटर पर संचालन। हम निकट भविष्य में कोड को एक वेब सर्वर पर ले जाएंगे, लेकिन हम यह सुनिश्चित करना चाहते हैं कि हमारे वेब सर्वर के पीछे कम से कम कुछ परतें हैं जो फ़िशिंग के लिए प्रतिरोधी हैं, और करने के लिए कई लिनक्स पैकेजों को नियुक्त करते हैं यह। यदि आप अभी भी मैक ओएस का उपयोग करना चाहते हैं, तो आपको खोज और स्थापित करने के लिए स्वागत हैई आवश्यक पैकेज ऑनलाइन, लेकिन इस पुस्तक या श्रृंखला को कवर करने वाले हर पैकेज के लिए विकल्प नहीं हो सकते हैं।
आइए कमांड सूडो Ascript चलाकर बैकअप स्क्रिप्ट के साथ हमारे काम करने के लिए कुछ कमांड जोड़ें
# …
git add –all
git commit -m “backup”
git push -u origin master
एक बार फिर, सहेजने के लिए एक्स को नियंत्रित करें।
अब हमें इस परियोजना के लिए कुछ समय कॉन्फ़िगरेशन करने की आवश्यकता है। क्योंकि यह जल्द ही एक गिट प्रोजेक्ट होगा, हमें हर बार हर कमांड को टाइप करने की आवश्यकता नहीं है, जब हम एक गिट रिपॉजिटरी से तैनात करते हैं, लेकिन जब हम अपनी तैनाती स्क्रिप्ट लिखते हैं तो हम इसे लटकाएंगे। शुरू करने के लिए, आइए सुनिश्चित करें कि हम सही निर्देशिका में हैं और Git रिपॉजिटरी को इनिशियलाइज़ करते हैं और SSH कुंजी उत्पन्न करते हैं।
cd /path/to/directory
git init
git branch -m master
ssh-keygen
SSH-KEYGEN टाइप करने के बाद, नई कुंजी को होम फ़ोल्डर में एक फ़ोल्डर के तहत सहेजा जाना चाहिए जिसे .ssh कहा जाता है। इसे id_rsa.pub कहा जाता है। आइए इस कुंजी को ढूंढें और इसे कॉपी करें। इसे देखने के लिए,
cd ~
cat .ssh/id_rsa.pub
अंतिम कमांड द्वारा लौटाए गए पाठ को कॉपी करें, और अपने खाते में SSH कुंजी जोड़ने से पहले, अपने Git प्रदाता (आदर्श रूप से GitHub) के साथ एक खाता बनाएं। एक बार जब आपके पास कोई खाता है, तो मेनू में एक्सेस के तहत SSH और GPG कुंजी में अपनी SSH कुंजी जोड़ने से पहले ऊपरी दाएं मेनू पर क्लिक करें और सेटिंग्स दर्ज करें। एक SSH कुंजी जोड़ें और एक नया रिपॉजिटरी बनाने के लिए GitHub में लौटने और लौटने से पहले इसे चिपकाकर और इसे एक शीर्षक देकर अपना जोड़ें। यह अन्य GIT प्रदाताओं के लिए समान है, आपको उनके दस्तावेज पढ़ने की आवश्यकता होगी। नए रिपॉजिटरी कॉन्फ़िगरेशन में, अपने रिपॉजिटरी को एक वर्णनात्मक नाम दें और यह तय करें कि आप इसे प्रकाशित करना चाहते हैं, और अभी तक समावेश के लिए कोई फ़ाइलों को कॉन्फ़िगर करना सुनिश्चित करें। एक बार रिपॉजिटरी बनाने के बाद, SSH URL के साथ क्लोन कॉपी करें, और इसे निम्न कमांड में पेस्ट करें।
git remote add git://… (your remote URL)
अब आप सीडी के साथ अपने रिपॉजिटरी में वापस जा सकते हैं, आप इससे परिचित होंगे। बैकअप के साथ अब अपनी बैकअप स्क्रिप्ट का प्रयास करें
महान! अब हम वास्तव में कोडिंग प्राप्त कर सकते हैं। अब Django स्थापित करते हैं कि हम बैश और git पर एक अच्छी समझ है। Django हमें अपने सॉफ़्टवेयर को स्वचालित रूप से वापस करने देगा, बैश भी ऐसा कर सकता है, लेकिन Django में एक सरल सुरक्षित कार्यान्वयन होना चाहिए (इसे अक्षम किया जा सकता है और अधिक आसानी से कॉन्फ़िगर किया जा सकता है)।
Ubuntu में सॉफ़्टवेयर स्थापित करने के लिए, हम SUDO Apt-Get कमांड का उपयोग करेंगे। सबसे पहले, आइए हम पहले से मौजूद सॉफ़्टवेयर को अपडेट और अपग्रेड करते हैं। यह sudo apt-get अपडेट और sudo apt-get अपग्रेड -Y के साथ किया जा सकता है। इसके बाद, चलो पायथन और हमारे आभासी वातावरण, हमारे कोड का घर, निम्न कमांड के साथ स्थापित करें: sudo apt-get python-is-python3 python3-venv स्थापित करें
यह सब आपको Ubuntu उदाहरण में सॉफ्टवेयर इंस्टॉल के मामले में Django के साथ जाने की आवश्यकता है। विंडोज और लिनक्स के लिए यह काफी सीधा होना चाहिए, लेकिन मैक के लिए आप एक वर्चुअल मशीन स्थापित करना चाहते हैं औरवर्चुअलबॉक्स या पैरालेल्स डेस्कटॉप जैसे मुफ्त या भुगतान किए गए वर्चुअल वातावरण का उपयोग करके लिनक्स उस पर और उबंटू वातावरण को सेटअप करने के लिए ऊपर दिए गए चरणों को फिर से बनाएं। उबंटू इस मामले में महत्वपूर्ण है क्योंकि यह सॉफ्टवेयर है जो वेबसाइटें चलती हैं और यह उन्हें उपरोक्त सभी सॉफ्टवेयर के साथ वेबसाइटों की मेजबानी करने में सक्षम बनाता है।
चलो Django में खुदाई करते हैं।
हमारी निर्देशिका में फिर से, साथ
python -m venv venv # वर्चुअल वातावरण बनाता है जहां कोड संग्रहीत होता है
source venv/bin/activate # आभासी वातावरण को सक्रिय करता है
pip install Django
django-admin startproject mysite . # जहां MySite वह परियोजना है जो मैं अपनी वर्तमान निर्देशिका में शुरू कर रहा हूं।
Django बस हमें शुरू कर रहा है, क्योंकि Django वेब सर्वर की मेजबानी कर रहा है और वह सब कुछ कर रहा है जो हमें एक बुनियादी स्थानीय वेबसाइट प्राप्त करने और चलाने के लिए आवश्यक है। अब जब हमारे पास Django स्थापित है, तो आइए सेटिंग्स को थोड़ा संपादित करें ताकि यह काम करने के लिए कि हमें कैसे चाहिए। सबसे पहले, आइए एक नया ऐप बनाएं
python manage.py startapp feed
आप देखेंगे कि पहले ऐप को फ़ीड कहा जाता है। ऐप को जो कुछ भी पसंद है, उसे बुलाया जाना चाहिए, और हम नए ऐप बनाएंगे, लेकिन प्रत्येक ऐप का नाम हर बार जब एप्लिकेशन को कोड में संदर्भित किया जाता है, तो यह लगातार होना चाहिए। एक नया ऐप जोड़ने के लिए, हम हमेशा सेटिंग्स को संपादित करेंगे। नैनो का उपयोग करना,
nano app/settings.py
सेटिंग्स में, इंस्टॉल किए गए_Apps ढूंढें और [] को 3 लाइनों में अलग करें। खाली केंद्र रेखा पर चार स्थानों का उपयोग करके, 'फ़ीड', या अपने ऐप का नाम जोड़ें। सेटिंग्स का यह खंड।
INSTALLED_APPS = [
'feed',
]
इससे पहले कि हम भूल जाएं, चलो परीक्षण करें कि Django काम कर रहा है। कमांड पायथन Manage.py Runserver 0.0.0.0:8000 का उपयोग करते हुए, हम सर्वर चला सकते हैं और फिर कंप्यूटर पर एक वेब ब्राउज़र में नेविगेट कर सकते हैं, जो Http: // localhost: 8000 पर कोड चला रहे हैं और एक उदाहरण वेबपेज देखें (यह काम करता है!) नियंत्रण C के साथ सर्वर को छोड़ दें, किसी भी अन्य कमांड के समान।
अब, चलो कुछ पायथन कोड लिखने में खुदाई करते हैं। Django के तीन मुख्य घटक हैं, वे सभी पूरी तरह से कोड द्वारा चलते हैं। घटकों को मॉडल, व्यू और टेम्पलेट कहा जाता है, और प्रत्येक उपयोगकर्ता को वेबपेज देने से पहले क्रमशः उच्च और निचले स्तर पर होता है।
मॉडल वह कोड है जो डेटाबेस में पुनर्प्राप्ति, क्रम और प्रतिपादन के लिए जानकारी संग्रहीत करता है।
दृश्य तय करता है कि मॉडल को कैसे प्रदान किया जाता है, हेरफेर किया जाता है, और संशोधित किया जाता है, लगभग हर दृश्य सीधे एक मॉडल का उपयोग करेगा।
टेम्पलेट HTML कोड है जिसमें कुछ अतिरिक्त घंटियाँ और सीटी टेम्पलेट भाषा कहा जाता है। टेम्पलेट को उस दृश्य द्वारा प्रदान किया जाता है जहां यह पायथन कोड से भरा है औरदृश्य से मॉडल और सूचना (usuall स्ट्रिंग्स और पूर्णांक) जैसे संदर्भ।
Django के अन्य घटक भी हैं, जिनमें शामिल हैं, लेकिन सीमित नहीं:
सेटिंग्स, जो ऐप को कॉन्फ़िगर करती है जैसा कि हमने चर्चा की थी।
URL, जो पैटर्न हैं कि उपयोगकर्ता वेब एप्लिकेशन के विशिष्ट भागों तक पहुंच प्राप्त करने के लिए अनुसरण करता है।
फॉर्म, जो यह परिभाषित करते हैं कि सर्वर को भेजी जाने वाली जानकारी को कैसे संभाला जाता है और डेटाबेस के साथ -साथ उपयोगकर्ता को भी प्रदान किया जाता है। ये सर्वर साइड पर प्रसंस्करण जानकारी की नींव हैं, और किसी भी प्रकार की जानकारी को कंप्यूटर स्टोर, सबसे विशेष रूप से टेक्स्ट स्ट्रिंग्स, नंबर और ट्रू/फाल्स बूलियन (आमतौर पर चेकबॉक्स) को स्वीकार कर सकते हैं।
टेम्प्लेट, जो HTML कोड और टेम्प्लेट भाषा हैं और पायथन और HTML के बीच की खाई को पाटते हैं, जिसका अर्थ है कि पायथन की जानकारी को HTML कोड के रूप में परोसा जा सकता है जिसे कोई भी एक्सेस कर सकता है और प्रतिबंधित एक्सेस के साथ एक वेबसाइट को सुरक्षित कर सकता है, जबकि पायथन कोड को वेब और उपयोगी के लिए सुलभ बना सकता है। एक दूरस्थ डिवाइस पर विभिन्न उद्देश्यों के लिए जो नहीं करता हैEED सर्वर के पास होना चाहिए।
स्टेटिक फाइलें, जो आमतौर पर जावास्क्रिप्ट होती हैं और यह लाइब्रेरी होती है जो सर्वर परोसती है और टेम्पलेट के साथ जुड़ी होती है।
मीडिया फाइलें, जो सर्वर परोसती है या बाहरी रूप से होस्ट की जाती है, या केवल प्रोसेस किए जाने से पहले सर्वर को लिखी जाती है और होस्टिंग के लिए किसी अन्य सर्वर (एक बकेट) पर पोस्ट की जाती है।
मिडिलवेयर, जो कोड के टुकड़े हैं जो हर दृश्य के रूप में एक ही समय में चलाए जाते हैं और दृश्य में "शामिल" माना जाता है।
संदर्भ प्रोसेसर, जो प्रत्येक दृश्य के संदर्भ को संसाधित करते हैं और अतिरिक्त संदर्भ जोड़ने के लिए उपयोग किए जाते हैं।
परीक्षण, जो मान्य करते हैं कि उपयोगकर्ता या अनुरोध दृश्य प्रदान करने से पहले कुछ आवश्यकताओं को पारित करता है।
उपभोक्ता, जो यह तय करते हैं कि WebSockets कैसे संभालते हैं और संचार का जवाब देते हैं।
व्यवस्थापक, जिसका उपयोग मॉडल को पंजीकृत करने के लिए किया जाता है ताकि उन्हें Django व्यवस्थापक पृष्ठ के भीतर विस्तार से हेरफेर किया जा सके, जहां डेटाबेस को एक ग्राफिकल इंटरफ़ेस के माध्यम से प्रशासित किया जा सकता है।
अजवाइन, जो Django कोड के अतुल्यकालिक कार्यों को परिभाषित करता हैNNING तुरंत अगले कार्य या कोड की लाइन के लिए आगे बढ़ने से पहले।
Django में कई अन्य घटक हो सकते हैं, जिन पर हम यहां विस्तार से चर्चा करेंगे। Django को अधिक कार्यात्मक बनाने के बहुत सारे तरीके हैं, Websockets जोड़ते हैं, जो तेज, सुव्यवस्थित संचार चैनल, अजवाइन हैं, जो अतुल्यकालिक कार्यों को निष्पादित करता है, और Django का विस्तार करने के लिए सॉफ़्टवेयर के अन्य टुकड़ों की एक भीड़, विशेष रूप से दृश्य कार्यों में, जहां अधिकांश में से अधिकांश कोड निष्पादित किया जाता है। दृश्य कार्य महत्वपूर्ण हैं क्योंकि वे आमतौर पर कोड के प्रत्येक टुकड़े को घोषित करते हैं जो एक विशिष्ट URL पैटर्न, या सर्वर के एक खंड के लिए विशिष्ट है।
सबसे पहले, आइए व्यू फ़ंक्शंस का पता लगाएं। देखें फ़ंक्शंस आयात को दर्शाने वाले कोड के साथ शुरू होते हैं जो दृश्य में उपयोग किए जाएंगे, और नियमित फ़ंक्शन परिभाषाओं या कक्षाओं का उपयोग करके परिभाषित किए जाते हैं। सबसे सरल दृश्य फ़ंक्शन परिभाषा डीईएफ द्वारा परिभाषित किए गए हैं, और एक मूल टेम्पलेट के साथ एक HTTPRESPONSE लौटाएं। आइए "हैलो वर्ल्ड" पाठ को वापस करने के लिए एक बुनियादी दृश्य को परिभाषित करके शुरू करें। याद रखें कि हर बार जब आप जोड़ते हैंDef, If, जबकि, के लिए, आदि जैसे एक बयान को पूरा करें, आपको अपने फ़ंक्शन पर लागू होने वाली प्रत्येक पूर्ववर्ती परिभाषाओं के लिए 4 रिक्त स्थान जोड़ने की आवश्यकता होगी। हम जल्द ही इनमें से प्रत्येक में क्या करेंगे।
हमारी साइट की निर्देशिका से, नैनो का उपयोग करके फ़ीड/views.py फ़ाइल को संपादित करें और निम्नलिखित पंक्तियों को अंत में जोड़ें
from django.http import HttpResponse
def hello(request):
return HttpResponse('hello world')
Django का Httpresponse एक टेक्स्ट स्ट्रिंग के साथ प्रतिक्रिया करता है, जिसे उद्घाटन और समापन के साथ दर्शाया गया है। ' हर बार जब आप किसी फ़ंक्शन या क्लास को जानकारी देते हैं, जैसे अनुरोध या स्ट्रिंग, आपको कोष्ठक (, खोलना और बंद) का उपयोग करना होगा।
यह सब हम अभी तक अपने दृष्टिकोण को देखने की जरूरत नहीं है। बेशक, हमने सर्वर को यह नहीं बताया कि दृश्य वास्तव में कहां है, हमें अभी भी एक पथ को परिभाषित करने की आवश्यकता है जिसके द्वारा दृश्य को प्रस्तुत करना चाहिए। आइए ऐप/urls.py में एक बुनियादी पथ को परिभाषित करके शुरू करें, और हम बाद में पथ समूहों में मिलेंगे।
App/urls.py में, हमने जो दृश्य बनाया था, उसके आयात के आयात के बाद आयात बयानों के बाद एक पंक्ति जोड़ें।
from feed import views as feed_views
अब, आइए व्यू पैटर्न को परिभाषित करें। देखें पैटर्न में तीन घटक होते हैं, पथ घटक, जो सर्वर को बताता है कि दृश्य सर्वर के भीतर मौजूद है (URL पथ जो उपयोगकर्ता को नेविगेशन बार में वेबपेज में प्रवेश करने के लिए टाइप करता है), दृश्य घटक जहां दृश्य निर्दिष्ट किया गया है, और एक दृश्य के लिए अनुकूल नाम इसलिए टेम्पलेट के साथ काम करते समय इसे पुनः प्राप्त करना आसान है, विशेष रूप से इसलिए यह नाम बदला जा सकता है और यदि आवश्यक हो तो किसी अन्य दृश्य के लिए जगह बनाने या अधिक तार्किक नाम लेने के लिए अद्यतन किया जा सकता है। यह इस तरह से चीजों को करने और लचीला होने के लिए समझ में आता है, क्योंकि आपका कोडबेस एक बदलते वातावरण होगा जिसे मूल्यवान और काम करने में आसान होने के लिए लचीलेपन और सुधार की आवश्यकता होती है। यहां आपका दृश्य कैसा दिखेगा, आप इसे urlpatterns = [ऐप/urls.py का अनुभाग जोड़ सकते हैं। दृश्य पैटर्न को ऊपर वर्णित तीन घटकों और पथ नामक एक फ़ंक्शन के साथ परिभाषित किया गया है। आपके URL पैटर्न एक सूची हैं, इसलिए उनमें प्रत्येक आइटम को हमेशा समाप्त करना सुनिश्चित करेंएक अल्पविराम के साथ, क्योंकि यह प्रत्येक को अलग करता है। प्रत्येक आइटम को एक नई लाइन पर भी जाना चाहिए, एक बार फिर से चार रिक्त स्थान के साथ, सेटिंग्स में ऐप की तरह। हम एक खाली स्ट्रिंग फ़ंक्शन के साथ दृश्य के पहले घटक को परिभाषित करेंगे, ताकि वेब सर्वर की रूट डायरेक्टरी पर चलने वाला दृश्य बनाया जा सके। आपका urls.py अब जैसा दिखना चाहिए
from feed import views as feed_views
urlpatterns = [
path('', feed_views.hello, name='hello'),
]
यह Django के साथ एक वेबसाइट बनाने का आधार है जो पूरी तरह से स्थिर है। एक अधिक गतिशील वेबसाइट बनाने के लिए जहां हम कैशिंग जानकारी शुरू कर सकते हैं, जैसे चित्र, वीडियो, ऑडियो और अधिक, हमें मॉडल का उपयोग करने की आवश्यकता होगी, जिसे हम आगे देखेंगे। अभी के लिए, आइए हमारे कोड की जांच करें और सर्वर को चलाएं। त्रुटियों के लिए कोड की जांच करने के लिए, चलाएँ:
python manage.py check
यदि कोई त्रुटि संदेश हैं, तो आपको अपने ऐप में किए गए परिवर्तनों की सावधानीपूर्वक समीक्षा करनी चाहिए और यह देखना चाहिए कि क्या कुछ ऐसा है जिसे तय करने की आवश्यकता है, जैसे कि एक बाहरी या कमी वाले स्थान, एक अतिरिक्त चरित्र, एक अघोषित स्ट्रिंग, किसी भी टाइपो, किसी भी गलती से हटाए गए चरित्र, या कुछ और। त्रुटि संदेश के माध्यम से पढ़ना (यदि आपके पास एक है), तो आपको एक फ़ाइल के साथ एक फ़ाइल का पथ देखने में सक्षम होना चाहिए या लाइन नंबर के साथ संपादित किया गया है, इसलिए उस फ़ाइल और लाइन को देखें और देखें कि क्या आप कुछ भी ठीक कर सकते हैं जो वहां है । यदि आपने समस्या तय कर ली है, तो उपरोक्त कमांड को फिर से चलाएं। जब आपका सॉफ़्टवेयर चलाने के लिए तैयार होता है और काम कर रहा होता है, तो आपको आउटपुट दिखाई देगा "सिस्टम चेक की पहचान कोई समस्या नहीं है।" अब आप जाने के लिए तैयार हैं। सर्वर को चलाएं:
python manage.py runserver 0.0.0.0:8000
अब एक वेब ब्राउज़र खोलें और http: // localhost: 8000 पर नेविगेट करें। आपको अपने विचार में HTTPRESPONSE फ़ंक्शन के कोष्ठक और उद्धरणों में लौटाया गया पाठ देखना चाहिए। यह सिर्फ एक मूल उदाहरण है, लेकिन अगर आपने इसे दूर कर दिया है, तो आप लिनक्स, बैश, पायथन और Django के काम की मूल बातें समझते हैं। आइए कुछ डेटाबेस मॉडलिंग में गहराई से खुदाई करें, और जानकारी संग्रहीत करने में एक पायथन वर्ग की शक्ति का पता लगाएं। फिर, हम जावास्क्रिप्ट और मशीन लर्निंग का उपयोग करके अपनी साइट को पूरी तरह से चित्रित, लचीला और सुरक्षित बनाने से पहले हम HTML और CSS पर पकड़ प्राप्त करना शुरू कर देंगे।
कक्षाएं आपके ऐप के मॉडल में संग्रहीत की जाती हैं। नैनो का उपयोग करके, ऐप/models.py संपादित करें और एक नया वर्ग जोड़ें। एक वर्ग को वर्ग की परिभाषा के साथ परिभाषित किया गया है और इसे एक सुपरक्लास पारित किया गया है, जिससे यह विरासत में मिला है, इस मामले में मॉडल। कक्षा का नाम वर्ग की परिभाषा के बाद आता है, और वर्ग की परिभाषा के बाद A: (बृहदान्त्र) का उपयोग किया जाता है, इससे पहले कि वर्ग से बंधी विशेषताओं और फ़ंक्शन परिभाषाओं को नीचे निरूपित किया जाता है। हमारी कक्षाएक आईडी की आवश्यकता है जिसे हम इसे पुनः प्राप्त करने और इसे अद्वितीय रखने के लिए उपयोग कर सकते हैं, और इसे कुछ जानकारी संग्रहीत करने के लिए एक पाठ क्षेत्र की भी आवश्यकता है। बाद में हम एक टाइमस्टैम्प, फाइलें, बूलियन (सच्ची या झूठी परिभाषाएं जोड़ सकते हैं जो हमारे कोड को मॉडल के साथ क्या करना है, इस बारे में निर्णय लेने में मदद कर सकते हैं, और इसका उपयोग इसे सॉर्ट करने के लिए किया जा सकता है), एक उदाहरण मॉडल को एक उपयोगकर्ता को लॉग इन करने के लिए टाई करने के लिए एक उदाहरण सर्वर में, और अधिक। आइए कोड को अनपैक करें
from django.db import models # आयात जो हमारी कक्षा को परिभाषित करने के लिए उपयोग किया जाता है और यह विशेषताएँ हैं
class Post(models.Model): # हमारी कक्षा की परिभाषा ही
id = models.AutoField(primary_key=True) # हमारे मॉडल की आईडी, एक स्वचालित रूप से उत्पन्न कुंजी जो हमें मॉडल को क्वेरी करने देगी, इसे अद्वितीय रखेगी, और जब हमें मॉडल के साथ बातचीत करने की आवश्यकता होती है, तो यह उपयोगी होता है।
text = models.TextField(default='') # हमारे क्लास स्टोर, इस मामले में, कुछ पाठ, एक खाली स्ट्रिंग के लिए डिफ़ॉल्ट।
फाइल को बंद करें और सहेजें जैसा कि हमने पहले किया था।
कई अन्य फ़ील्ड और विकल्प हैं जो हम इस वर्ग को अपडेट करेंगे जब हम इस वर्ग को अपडेट करते हैं क्योंकि हमारा ऐप विकसित होता है, लेकिन यह कुछ पाठ पोस्ट करने के लिए ऐप बनाने की बुनियादी आवश्यकताएं हैं। हालाँकि, यह मॉडल अकेले काम नहीं करेगा। जैसा कि पहले वर्णित है, हमें इस मॉडल को काम करने के लिए एक कस्टम दृश्य और कस्टम URL पैटर्न की आवश्यकता होगी, और हमें एक टेम्पलेट के साथ एक फॉर्म की भी आवश्यकता होगी। आइए पहले फॉर्म का पता लगाएं।
एक फॉर्म को परिभाषित करने के लिए, नैनो के साथ ऐप/फॉर्म को संपादित करें और निम्न पंक्तियों को जोड़ें। हमें दो आयात, हमारे फॉर्म क्लास, साथ ही हमारे द्वारा बनाए गए मॉडल (Feed.models.post), मॉडल के समान एक वर्ग परिभाषा और मेटा नामक एक उपवर्ग के साथ एक फ़ील्ड की आवश्यकता होगी जो मॉडल को परिभाषित करेगा। साथ। फॉर्म में एक इनिशियलाइज़ेशन फ़ंक्शन भी हो सकता है जो अनुरोध, मॉडल या अन्यथा में जानकारी के आधार पर इसे सेट करता है, हम बाद में इसका पता लगाएंगे।
मॉडल फॉर्म इतने उपयोगी हैं क्योंकि वे एक मॉडल बना सकते हैं या एक मॉडल को संपादित भी कर सकते हैं,इसलिए हम दोनों के लिए उनका उपयोग करेंगे। चलो एक रूप में एक को परिभाषित करते हैं
from django import forms
from feed.models import Post
class PostForm(forms.ModelForm):
text = forms.CharField(widget=forms.Textarea)
class Meta:
model = Post
fields = ('text',)
यह एक रूप और मॉडल कैसा दिखता है, इसकी मूल बातें हैं। इस मॉडल फॉर्म का उपयोग किसी पोस्ट को तत्काल या संपादित करने के लिए किया जा सकता है, इसमें शामिल पाठ को बदलना। हम इस फॉर्म को अगले दृश्य में एकीकृत करते हैं। सबसे पहले, चलो माइग्रेशन बनाते हैं और डेटाबेस को माइग्रेट करते हैं ताकि हमारा कोड मॉडल के साथ बातचीत कर सके जब यह चलता है। ऐसा करने के लिए, निम्नलिखित कमांड चलाएं:
python manage.py makemigrations
python manage.py migrate
इसे निष्पादित करने में एक मिनट का समय लगेगा, लेकिन एक बार जब यह होता है, तो यह आपको सॉफ्टवेयर में दृश्य, मिडिलवेयर या कहीं और में मॉडल तक पहुंचने की अनुमति देगा। आइए एक दृश्य बनाकर जारी रखें जहां हम अपने मॉडल को देख सकते हैं। फ़ीड/views.py संपादित करें और निम्नलिखित कोड जोड़ें, जैसा कि उल्लेख किया गया है। आपको # साइन के बाद कुछ भी जोड़ने की आवश्यकता नहीं होगी, वह कोड टिप्पणी है जो कोड के बारे में जानकारी को निरूपित करने के लिए उपयोग की जाती है। हम अपने मॉडल को विचारों में आयात करके शुरू करेंगे, और इसे एक संदर्भ में जोड़कर जहां हम इसे एक टेम्पलेट में प्रदर्शन के लिए एक सूची के रूप में प्रस्तुत कर सकते हैं। अगला, हम एक टेम्पलेट जोड़ेंगे जहां हम मॉडल के आधार पर एक नई ऑब्जेक्ट बनाने और इसे सर्वर पर पोस्ट करने के लिए फॉर्म और मॉडल को एक बटन के साथ प्रस्तुत कर सकते हैं। यह जटिल लगता है, इसलिए चलो इसे कदम से कदम रखें। इससे पहले कि हम दृश्य खत्म कर दें, आइए एक टेम्पलेट बनाएं जो सिर्फ मॉडल को प्रस्तुत करता है और सुनिश्चित करें कि हम इसे शेल में एक नई पोस्ट बनाकर देख सकते हैं। यहां बताया गया है कि कैसे देखें:
from feed.models import Post
from django.shortcuts import render, redirect
from django.urls import reverse
def feed(request):
posts = Post.objects.all() # डेटाबेस में अब तक सभी पोस्ट क्वेरी करें
return render(request, 'feed/feed.html', {
'posts': posts,
})
यह सब बहुत सरल लगता है जब तक हम नीचे तक नहीं पहुंचते। रेंडर, पिछले उदाहरण की तरह HTTP प्रतिक्रिया के बजाय फ़ंक्शन द्वारा लौटा दिया गया मान, हमेशा अपने पहले इनपुट के रूप में एक अनुरोध लेता है, एक संदर्भ को स्वीकार करता है (इस मामले में डेटाबेस में पोस्ट), जिसे अब टेम्पलेट में प्रदान किया जा सकता है , और फ़ंक्शन में परिभाषित टेम्पलेट लौटाता है। टेम्पलेट एक HTML दस्तावेज़ होने जा रहा है, जिसमें Jinja2 नामक भाषा का एक छोटा सा हिस्सा है, जो HTML में पायथन की जानकारी प्रदान करता है।
टेम्प्लेट बनाना शुरू करने के लिए, फ़ीड में दो निर्देशिकाएं बनाएं।
mkdir feed/templates
mkdir feed/templates/feed
अगला, ऊपर निर्देशिका में एक टेम्पलेट संपादित करें, फ़ीड/टेम्प्लेट/फ़ीड, और इस उदाहरण के लिए कोड जोड़ें। आइए इस उदाहरण के लिए टेम्पलेट को देखें।
<!doctype HTML>
<html>
<body>
<legend>Feed</legend>
<hr>
{% for post in posts %}
<p>{{ post.text }}</p>
{% endfor %}
</body>
</html>
यह एक बहुत ही सरल टेम्पलेट है। यह HTML टैग खोलने और बंद करने को परिभाषित करता है, एक दस्तावेज़ प्रकार का टैग, एक लीजेंड शीर्षक के साथ एक बॉडी टैग, एक ब्रेक टैग जो स्क्रीन पर एक छोटी लाइन जोड़ता है, और लूप के लिए जो प्रत्येक पोस्ट को एक पैराग्राफ के रूप में पोस्ट की सूची में प्रस्तुत करता है टेम्पलेट। यह सब पोस्ट को प्रस्तुत करने के लिए है, लेकिन डेटाबेस में अभी तक कोई भी नहीं है। चलो शेल के साथ कुछ बनाएं। हम प्रबंधक के साथ शेल चला सकते हैं
python manage.py shell
अब, चलो हमारे पोस्ट मॉडल आयात करते हैं
from feed.models import Post
अगला, हम एक स्ट्रिंग के साथ एक साधारण पोस्ट बनाएंगे और शेल से बाहर निकलेंगे। स्ट्रिंग कुछ भी हो सकता है, जब तक यह मान्य पाठ है।
Post.objects.create(text='hello world')
exit()
अंत में, हमें अपने फ़ीड में एक URL पैटर्न जोड़ने की आवश्यकता होगी। क्योंकि हमारा फ़ीड ऐप कई URL का उपयोग करेगा और हम फ़ाइल आकार को छोटा रखना चाहते हैं, आइए हमारे फ़ीड ऐप में एक स्थानीय urls.py बनाएं जो इस तरह दिखता है:
from django.urls import path
from . import views
urlpatterns = [
path('', views.feed, name='feed'),
]
हमें बेस ऐप में urls.py को संपादित करने की भी आवश्यकता होगी, जो भी हमने इसे कॉल करने का फैसला किया, यह पहली निर्देशिका थी जिसे हमने बनाया था। App/app.py संपादित करें और URL पैटर्न में निम्नलिखित जोड़ें
from django.urls import include # शीर्ष पर
urlpatterns = [
# ... पिछला कोड यहाँ
path('feed/', include(('feed.urls'), namespace='feed')),
]
अब, जब हम पायथन Manage.py Runserver के साथ सर्वर चलाते हैं, तो हम अपने द्वारा बनाए गए पृष्ठ को देखेंगे क्योंकि हमारे पास मॉडल, दृश्य और टेम्पलेट के साथ -साथ URL पैटर्न भी है, साथ ही डेटाबेस में आइटम भी हैं। अगला, आइए हम बनाए गए फॉर्म को लागू करें और अपने पोस्ट बनाना शुरू करें। लेकिन इससे पहले कि हम बहुत अधिक कोड लिखें, आइए पहले लिखी गई स्क्रिप्ट का उपयोग करके एक बैकअप बनाएं, बैकअप। इस स्क्रिप्ट को शेल में चलाएं, कुछ क्षणों की प्रतीक्षा करें, और सभी कोड हमारे गिट रिपॉजिटरी तक समर्थित हो जाएंगे।
backup
फॉर्म को लागू करना अपेक्षाकृत सरल है। हम अपने फॉर्म को आयात करेंगे, दृश्य में एक पोस्ट अनुरोध हैंडलर जोड़ेंगे, और उसी दृश्य पर पुनर्निर्देशित करने से पहले डेटाबेस में पोस्ट को सहेजेंगे। हम पहले से आयात किए गए रीडायरेक्ट फ़ंक्शन का उपयोग कर सकते हैं, और दृश्य पैटर्न के लिए URL प्राप्त करने के लिए रिवर्स नामक एक अन्य फ़ंक्शन। हम इसे स्ट्रिंग 'फीड: फ़ीड' के साथ क्वेरी करेंगे क्योंकि शामिल पैटर्न का नामस्थान फ़ीड है, और दृश्य को फ़ीड भी कहा जाता है।
from feed.forms import PostForm
def feed(request):
posts = Post.objects.all() # डेटाबेस में अब तक सभी पोस्ट क्वेरी करें
if request.method == 'POST': # पोस्ट अनुरोध को संभालें
form = PostForm(request.POST) # फॉर्म का एक उदाहरण बनाएं और उस पर डेटा सहेजें
if form.is_valid(): # प्रपत्र को मान्य करें
form.save() # नई वस्तु को सहेजें
return redirect(reverse('feed:feed')) # एक अनुरोध के साथ एक ही URL पर पुनर्निर्देशित करें
return render(request, 'feed/feed.html', {
'form': PostForm(), # फॉर्म को संदर्भ में पास करना सुनिश्चित करें ताकि हम इसे प्रस्तुत कर सकें।
'posts': posts,
})
अब, हमें नए फॉर्म के लिए टेम्पलेट को अपडेट करना होगा। हम इसका उपयोग करके ऐसा कर सकते हैं
खरीदना | क्रिप्टो के साथ खरीदें
https://glamgirlx.com/hi/practical-web-based-deep
https://glamgirlx.com/hi/practical-web-based-deep -
मुझे इस पते का उपयोग करके बिटकॉइन में एक टिप छोड़ दें: 3KhDWoSve2N627RiW8grj6XrsoPT7d6qyE
© Glam Girl X 2025