क्रैश कोर्स 101
10 मॉड्यूल
5 सप्ताह

टेबल

कॉपी करने के लिए क्लिक करें

वेब-अनुप्रयोगों में तालिकाओं का उपयोग करना और इसके लिए डेटा प्राप्त करना


डेटाबेस में पहला रिकॉर्ड दिखाई दिया! लेकिन हम इसे नहीं देखते हैं, और इसे ठीक करने की जरूरत है। ऐसा करने के लिए, आपको Table घटक (एक तालिका जो आवश्यक डेटा प्रदर्शित करेगी) की आवश्यकता है। जोड़ने के तुरंत बाद, यह आपको यह तय करने के लिए कहेगा कि इसमें कौन सा डेटा होगा और एक मॉडल और समापन बिंदु का चयन करें।

टेबल सेटिंग्स

बनाई गई तालिका तुरंत आपकी आवश्यकताओं के अनुसार जारी की जानी चाहिए। उदाहरण के लिए, एक पृष्ठ पर रिकॉर्ड्स की संख्या सीमित करें (तालिका बहुत लंबी और बहु-पृष्ठ हो सकती है), साथ ही उन फ़ील्ड्स को हटा दें जिनमें कोई रुचि नहीं है या संबंधित तालिकाओं से आउटपुट के लिए वांछित फ़ील्ड सेट करें।

उसी समय, हमें याद है कि किसी भी घटक को जोड़ने का मतलब अभी तक काम के लिए पूरी तत्परता नहीं है। आपको उपयुक्त व्यावसायिक प्रक्रियाएँ बनाने की आवश्यकता है। तालिकाओं के लिए, बहुत कुछ स्वचालित रूप से बनाया जाता है, लेकिन प्रशिक्षण के हिस्से के रूप में, हम सामग्री को बेहतर ढंग से आत्मसात करने के लिए खरोंच से सब कुछ बनाएंगे।

टेबल ट्रिगर

तालिकाओं में सबसे बड़ी रुचि के तीन ट्रिगर हैं - onDataUpdate , onShow , और onFilter । आइए onShow से शुरू करें और परिभाषित करें कि स्क्रीन पर टेबल दिखाए जाने पर क्या होना चाहिए। इसके लिए तीन ब्लॉक की आवश्यकता होगी:

1) Table Update Properties । तालिका के वांछित गुण सेट करें। उदाहरण के लिए, यहां आप एक पृष्ठ पर रिकॉर्ड की संख्या को सीमित कर सकते हैं ( Records per page = 10 ) और यह भी दिखाएं कि पृष्ठ डेटा लोडिंग मोड में है ( Loading = true )

2) Server request GET /country/ । डेटा प्रकट होने के लिए, उन्हें कहीं ले जाने की आवश्यकता है। और ऐसा करने के लिए, संबंधित समापन बिंदु के लिए डेटाबेस से अनुरोध करें। उसी समय, इस समापन बिंदु के इनपुट मापदंडों की संख्या पर ध्यान दें। वे क्वेरी में अधिक लचीलापन प्रदान करते हैं और केवल वही डेटा प्राप्त करते हैं जिसकी वास्तव में आवश्यकता होती है।
हमारे मामले में, हम _limit = 10 सेट करेंगे क्योंकि प्रति पृष्ठ प्रविष्टियों की संख्या 10 है, और अधिक लोड करने का कोई मतलब नहीं है। इसके अलावा, हम सही आउटपुट ऑर्डर करेंगे, नाम से सब कुछ सॉर्ट करेंगे ( _sort_by = name ), और सॉर्ट ऑर्डर भी सेट करेंगे। _sort_order पैरामीटर मान ASC ( Ascending शब्द से, प्रत्यक्ष सॉर्टिंग के लिए, सबसे छोटे मान से सबसे बड़े मान तक) या DESC ( Descending , विपरीत क्रम) ले सकता है। प्रत्यक्ष वर्णानुक्रमिक छँटाई हमारे लिए ठीक है, इसलिए _sort_order = ASC

_with पैरामीटर विशेष ध्यान देने योग्य है। इसके बिना क्वेरी को निष्पादित करते हुए, हम केवल देशों के बारे में डेटा प्राप्त कर सकते हैं। लेकिन देश मॉडल शहरों से संबंधित है, और हालांकि यह डेटा अनुरोधित तालिका से संबंधित नहीं है, फिर भी हम उन्हें देखना चाहते हैं। ऐसा करने के लिए, _with = citys सेट करें और तुरंत डेटा प्राप्त करें कि इस देश में कौन से शहर हैं।

3) Table Update Data । डेटा प्राप्त होता है, लेकिन इसे स्क्रीन पर प्रदर्शित करने के लिए तालिका में स्थानांतरित करने की आवश्यकता होती है। ऐसा करने के लिए, हम पिछले ब्लॉक में प्राप्त सभी जानकारी ( data ) के साथ-साथ रिकॉर्ड की कुल संख्या ( count - Total Records ) पास करते हैं, यह समझने के लिए कि तालिका में कितने पृष्ठ होने चाहिए।

अगला ट्रिगर onDataUpdate है। विभिन्न व्यावसायिक प्रक्रियाओं के परिणामस्वरूप तालिका में डेटा को अद्यतन किया जा सकता है। और जब ऐसा होता है, तो एक बार यह निर्दिष्ट करना सबसे अच्छा है कि क्या होना चाहिए और प्रत्येक व्यवसाय प्रक्रिया में समान ब्लॉक नहीं रखना चाहिए। हमारे मामले में, Table Update Properties ब्लॉक का फिर से उपयोग करना सही होगा, लेकिन इस बार लोडिंग मोड ( Loading = false ) को हटाने के लिए, जो पहले सेट किया गया था, और यह दिखाने के लिए कि तालिका काम करने के लिए तैयार है।

आखिरी ट्रिगर जो हमें चाहिए वह है onFilter । यह परिभाषित करता है कि तालिका के अन्य पृष्ठों में संक्रमण के समय क्या होना चाहिए। ऐसा करने के लिए, इसमें _offset पैरामीटर है, जो पृष्ठ संख्या के अनुसार इंगित करता है कि डेटा लोड करते समय किस ऑफ़सेट की आवश्यकता है।

उदाहरण के लिए, यदि, हमारे मामले में, प्रत्येक पृष्ठ पर 10 प्रविष्टियाँ हैं, तो तीसरे पृष्ठ को 21 से 30 तक की प्रविष्टियों की आवश्यकता होगी। यह डेटा _offset से प्राप्त किया जाएगा और Server request GET /country/ ब्लॉक को भेजा जा सकता है। अन्यथा, व्यावसायिक प्रक्रिया पूरी तरह से TableOnShow ट्रिगर की प्रक्रिया के साथ मेल खाएगी। ऐसी स्थितियों में, यह उचित होगा कि दो अलग-अलग ट्रिगर एक ही व्यावसायिक प्रक्रिया शुरू करें।

लेकिन हमारे मामले में, महत्वपूर्ण अंतर _offset पैरामीटर में है। यदि आप नीचे दिए गए स्क्रीनशॉट के अनुसार सब कुछ छोड़ देते हैं, तो प्रक्रिया onShow ट्रिगर के अनुसार शुरू हो जाएगी, लेकिन यह Server request GET /country/ क्योंकि इसे _offset मान नहीं मिल सकता है (यह किसी अन्य ट्रिगर से पारित किया गया है)।

चर का उपयोग करके इस स्थिति को सबसे अच्छा हल किया जाता है। आइए एक विशिष्ट उदाहरण देखें। _offset मान को बचाने के लिए हमें Integer प्रकार के एक चर की आवश्यकता होती है। इसलिए, हम इस वेरिएबल को घोषित करने के लिए एक Integer ब्लॉक का उपयोग करते हैं, लेकिन इसके मूल्य को लिखने के लिए दो अलग-अलग Set Variable ब्लॉक, प्रत्येक एक अलग ट्रिगर से जुड़े होते हैं।

Table onShow ट्रिगर के अनुसार, हमें किसी ऑफसेट की आवश्यकता नहीं है, तालिका में डेटा शुरू से ही दिखाया गया है और _offset = 0 है, इसलिए हम Set Variable ब्लॉक में Value = 0 सेट करते हैं।

जब Table onFilter ट्रिगर लॉन्च किया जाता है, तो हम पहले से ही _offset मान प्राप्त कर लेते हैं और इसका उपयोग करना चाहते हैं इसलिए हम ट्रिगर के _offset मान को Value के रूप में Set Variable ब्लॉक में पास करेंगे।

अगले चरणों में, ट्रिगर की व्यावसायिक प्रक्रियाएँ एक-दूसरे से भिन्न नहीं होती हैं, इसलिए दो व्यावसायिक प्रक्रियाओं को एक में संयोजित किया जाता है, जिनमें से प्रत्येक का _offset पैरामीटर के लिए पूर्णांक चर का अपना मान होता है।

Was this article helpful?
अभी भी उत्तर की तलाश है?