Ansible Academy · पाठ

टेम्पलेट में Loops और if Blocks

बार-बार आने वाले कॉन्फ़िगरेशन अनुभाग बनाएँ।

पाठ 3, कुल 4 में से13 चरण

टेम्पलेट में Loops और if Blocks, CoddyKit पर Ansible Academy का एक निःशुल्क पाठ है। यह 4 में से 3वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Ansible Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Ansible Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

तर्क {% %} में रहता है

मान दिखाने के अलावा, Jinja2 {% %} टैग के अंदर नियंत्रण-तर्क चलाता है। इसी तरह एक टेम्पलेट कई पंक्तियाँ तैयार कर सकता है। 🔁

एक बुनियादी for लूप

सूची की पंक्तियों को दोहराने के लिए for लूप का उपयोग करें। हर आइटम तैयार किए गए पाठ का एक और खंड बनाता है।

{% for host in backends %}
server {{ host }};
{% endfor %}

अपने ब्लॉक हमेशा बंद करें

हर आरंभिक टैग के लिए एक समापन टैग आवश्यक है: endfor लूप को समाप्त करता है, ठीक वैसे ही जैसे endif किसी शर्त को समाप्त करता है। इसे भूलने पर रेंडरिंग विफल हो जाती है।

शब्दकोश पर लूप चलाएँ

संरचित कॉन्फ़िगरेशन तैयार करने के लिए .items() से शब्दकोश के कुंजी-मान युग्मों पर जाएँ और हर कुंजी तथा मान को लें।

{% for key, val in settings.items() %}
{{ key }} = {{ val }}
{% endfor %}

loop चर

लूप के अंदर Jinja2 आपको वर्तमान गिनती के लिए loop.index और उपयोगी बूलियन मानों के रूप में loop.first या loop.last देता है।

{% for s in servers %}
server{{ loop.index }} {{ s }};
{% endfor %}

एक सरल if ब्लॉक

if ब्लॉक अपने भाग को तभी तैयार करता है जब शर्त सही हो, इसलिए वैकल्पिक कॉन्फ़िगरेशन केवल आवश्यकता होने पर दिखाई देता है।

{% if enable_ssl %}
ssl on;
{% endif %}

if, elif और else

elif और अंतिम else से विकल्पों को क्रम में जोड़ें। Python की तरह केवल एक शाखा तैयार होती है।

{% if env == 'prod' %}
level = warn
{% else %}
level = debug
{% endif %}

लूप के अंदर शर्तें

केवल मेल खाने वाले आइटम तैयार करने के लिए for के अंदर if रखें, जैसे पूल में निष्क्रिय सर्वर को छोड़ देना।

{% for h in hosts %}
{% if h.enabled %}
server {{ h.ip }};
{% endif %}
{% endfor %}

रिक्त स्थान का नियंत्रण

लूप पीछे रिक्त पंक्तियाँ छोड़ सकते हैं। {%- -%} जैसा डैश आसपास के रिक्त स्थान को हटाकर परिणाम को व्यवस्थित रखता है।

{%- for h in hosts -%}
{{ h }}
{%- endfor -%}

for लूप का else

for में ऐसा else भी हो सकता है जो केवल सूची खाली होने पर चलता है; यह उपयोगी वैकल्पिक पंक्ति के लिए बिल्कुल उपयुक्त है।

{% for h in backends %}
server {{ h }};
{% else %}
# no backends defined
{% endfor %}

प्रिंट और तर्क वाले टैग

इनका अंतर स्पष्ट रखें: {{ }} कोई मान दिखाता है, जबकि {% %} प्रवाह को नियंत्रित करता है, लेकिन स्वयं कुछ नहीं दिखाता।

त्वरित जाँच

आप सूची में मौजूद हर होस्ट के लिए कॉन्फ़िगरेशन की एक पंक्ति दोहराना चाहते हैं। कौन-सा टैग वह लूप शुरू करता है?

पुनरावलोकन

अब आप for से लूप चला सकते हैं, if से शाखा बना सकते हैं, loop.index पढ़ सकते हैं, इन्हें एक-दूसरे के अंदर रख सकते हैं और रिक्त स्थान हटा सकते हैं। अब एक ही टेम्पलेट गतिशील कॉन्फ़िगरेशन लिखता है। ✨

शुरुआत निःशुल्क

एआई शिक्षक के साथ YAML सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
30
पाठ
120

अक्सर पूछे जाने वाले प्रश्न

क्या “टेम्पलेट में Loops और if Blocks” पाठ निःशुल्क है?

हाँ—“टेम्पलेट में Loops और if Blocks” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Ansible Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Ansible Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“टेम्पलेट में Loops और if Blocks” में मैं क्या सीखूँगा?

बार-बार आने वाले कॉन्फ़िगरेशन अनुभाग बनाएँ। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Ansible Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Ansible Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Ansible Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 3वाँ पाठ है।

“टेम्पलेट में Loops और if Blocks” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Ansible Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Ansible Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. template Module और .j2 Files
  2. Jinja2 में Variables और Expressions
  3. टेम्पलेट में Loops और if Blocks
  4. Filters: default, join और upper
← Ansible Academy पर वापस जाएँ