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

मैं गो के HTML/टेम्पलेट पैकेज में बेस टेम्प्लेट कैसे लागू कर सकता हूं?

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

How can I implement Base Templates in Go's HTML/Template package?

गो के HTML/टेम्पलेट में बेस टेम्प्लेट लागू करना

वेब अनुप्रयोगों में जटिल लेआउट के साथ काम करते समय, बेस टेम्प्लेट बनाना अक्सर उपयोगी होता है जो अन्य के लिए आधार के रूप में कार्य करता है पन्ने. गो के html/टेम्पलेट पैकेज में, इसे {{define}} और {{template}} निर्देशों का उपयोग करके प्राप्त किया जा सकता है।

निम्नलिखित उदाहरण पर विचार करें जहां आपके पास एक बेस लेआउट फ़ाइल (base.html) है:




header...

{{template "content" .}}

footer...


और अलग पेज (पेज1.एचटीएमएल और पेज2.एचटीएमएल) जो अपने स्वयं के कस्टम कंटेंट के साथ इस बेस लेआउट का पुन: उपयोग करते हैं:

{{define "content"}}

Page1

{{end}} {{template "base.html"}}
{{define "content"}}

Page2

{{end}} {{template "base.html"}}

आप जिस समस्या का सामना कर रहे हैं वह यह है कि पेज 1 और पेज 2 दोनों रेंडरिंग के लिए एक ही HTML का उपयोग कर रहे हैं, जिसे पेज2.एचटीएमएल में परिभाषित किया गया है। इसे संबोधित करने के लिए, हमें यह सुनिश्चित करने की आवश्यकता है कि दोनों पृष्ठ {{टेम्पलेट}} ब्लॉक के भीतर अपने स्वयं के अद्वितीय सामग्री अनुभागों की घोषणा करें और उनका उपयोग करें।

एक बेहतर तरीका टेम्पलेट सामग्री को अलग-अलग फ़ाइलों में परिभाषित करना है, जैसा कि दिखाया गया है नीचे:

base.html:

{{define "base"}}




header...

{{template "content" .}}

footer...



{{end}}

page1.html:

{{define "content"}}
I'm page 1
{{end}}

page2.html:

{{define "content"}}
I'm page 2
{{end}}

अपने एप्लिकेशन में, आप template.New() और ParseFiles() का उपयोग करके सामग्री और बेस टेम्पलेट फ़ाइलों को टेम्पलेट ऑब्जेक्ट में पार्स कर सकते हैं। इसके बाद, आप ExecuteTemplate().

tmpl, err := template.New("").ParseFiles("page1.html", "base.html")
// check your err
err = tmpl.ExecuteTemplate(w, "base", yourContext)
नवीनतम ट्यूटोरियल अधिक>

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

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

Copyright© 2022 湘ICP备2022001581号-3