मान लें कि आपके पास "व्यू स्टोरी" नामक एक दृश्य है जो पाइथन/Django के माध्यम से बैकएंड पर प्रदान किया गया एक वेब पेज है। उस पृष्ठ पर Django के templating सिस्टम (लूप में) का उपयोग कर "देखें स्टोरी" टेम्पलेट के हिस्से के रूप में नीचे दिए गए टिप्पणियों की एक सूची है। यह पृष्ठ आपको सूची में एक टिप्पणी जोड़ने की अनुमति देता है। यह AJAX के माध्यम से किया जाता है और पृष्ठ को नई टिप्पणी के साथ अपडेट किया जाता है (बिना एक नया पूर्ण पृष्ठ अनुरोध भेजने के)।प्रारंभिक रूप से पृष्ठ को प्रस्तुत करें और उसी टेम्पलेट का उपयोग करके AJAX के माध्यम से अपडेट करें HTML
अब, सूची के अंत में नई टिप्पणी जोड़ते समय मैं इस नई टिप्पणी (<li>
के अंदर कुछ) के लिए जेनरेट किया गया HTML चाहता हूं जो सटीक उसी कोड का उपयोग करने के लिए उपयोग किया गया था जो मूल टिप्पणियों को उत्पन्न करने के लिए उपयोग किया गया था मूल अनुरोध के माध्यम से ग्राहक।
ऐसा करने के कई तरीके है:
प्रारंभिक प्रतिपादन JavaScript वैरिएबल में टिप्पणी डेटा फेंक है और एक बार पेज प्रदान की गई है जावास्क्रिप्ट के माध्यम से सामग्री जोड़ें। फिर जब नई टिप्पणियां जोड़ दी जाती हैं तो एक ही जावास्क्रिप्ट का उपयोग नए को प्रस्तुत करने के लिए किया जा सकता है। समस्या: एक खोज इंजन परिप्रेक्ष्य से मुझे यकीन नहीं है कि अगर पृष्ठ प्रस्तुत किए जाने के बाद उत्पन्न होता है तो Google टिप्पणियों को अनुक्रमित करने में सक्षम होगा - मुझे अनुमान नहीं है कि
प्रत्येक बार एक नई टिप्पणी जोड़ दी जाती है AJAX के माध्यम से, AJAX अनुरोध ने नई टिप्पणी के JSON डेटा की बजाय पृष्ठ पर डालने के लिए वास्तविक HTML को वापस कर दिया है। HTML को उसी टेम्पलेट स्निपेट का उपयोग करके जेनरेट किया जा सकता है जिसका उपयोग मूल पृष्ठ को प्रस्तुत करने के लिए किया गया था। इसके साथ समस्या यह है कि यह किसी विशेष दृश्य के लिए AJAX अनुरोध या इसे प्रस्तुत करने का एक तरीका है जो मुझे पसंद नहीं है।
# 2 के समान है सिवाय इसके कि एचटीएमएल को नई टिप्पणी के लिए पुनः प्राप्त करने के लिए एक अलग अनुरोध किया गया है या शायद सभी टिप्पणियां और सूची सिर्फ मिटा दी गई है और फिर से प्रस्तुत की गई है। ऐसा न करें क्योंकि यह गहराई से अक्षम और अनावश्यक रूप से समय लेने वाला है।
तो, संक्षेप में प्रस्तुत करने, मैं एक तरह से एक दृश्य के लिए खाका/एचटीएमएल कोड को डुप्लिकेट बचना चाहते हैं। और मुझे कुछ सलाह चाहिए कि दूसरों के लिए क्या काम किया है क्योंकि मुझे पूरा यकीन है कि यह एक आम मामला है जो बैक एंड पर तकनीक के अनियंत्रित है।
धन्यवाद!
हाँ, मैं सहमत हूं। मैं सिर्फ पूर्णता के लिए संभावनाओं को कवर करना चाहता था। – Karim