Jinja2'de Değişkenler ve İfadeler
Değerleri şablona aktarın.
Jinja2'de Değişkenler ve İfadeler, CoddyKit'te ücretsiz bir Ansible Academy dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Ansible Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Ansible Academy kursu toplamda 4 dersten oluşur.
Şablonların İçindeki Değişkenler
Play'inizde kullanılabilen her değişken şablonda da kullanılabilir. Değeri yazdırmak için adını {{ }} içine almanız yeterlidir. 🌟
server_name {{ domain }};
worker_processes {{ cpu_count }};Sözlük Anahtarlarına Erişme
Bir sözlük değişkeninde anahtara nokta veya köşeli parantez gösterimiyle erişin. Hem db.host hem de db['host'] aynı değeri döndürür.
host = {{ db.host }}
port = {{ db['port'] }}Bir Listeyi Dizine Göre Okuma
Bir listedeki öğeyi, sıfırdan başlayarak konumuna göre seçin. {{ servers[0] }} ilk girdiyi verir.
primary = {{ servers[0] }}
backup = {{ servers[1] }}Ansible Bilgilerini Kullanma
Toplanan bilgiler yalnızca değişkenlerdir; bu nedenle şablonlar onları da okuyabilir. ansible_hostname, ana makinenin kendi adını dosyaya yerleştirir.
# This host is {{ ansible_hostname }}
bind {{ ansible_default_ipv4.address }}İfadelerde Matematik
Jinja2, süslü parantezlerin içinde aritmetik işlemler yapar. Bir değeri sabit yazmak yerine hesaplayabilirsiniz; örneğin çalışan sayısını iki katına çıkarabilirsiniz.
max_workers {{ cpu_count * 2 }}Dizeleri Birleştirme
Dizeleri ~ işleciyle birleştirin. Sayısal olan artı işlecin aksine bu işlev, türleri ne olursa olsun parçaları birbirine ekler.
url = http://{{ host ~ ':' ~ port }}Karşılaştırma İfadeleri
İfadeler ayrıca bazı şeyleri sınayabilir. cpu_count > 4 gibi karşılaştırmalar, daha sonra mantıkta kullanılmak üzere doğru veya yanlış döndürür.
{{ http_port == 443 }}
{{ replicas >= 3 }}Şablonlarda Yorumlar
Kendiniz için notları {# ... #} içine alın. Jinja2 bunları tamamen kaldırır; bu nedenle işlenmiş dosyada hiçbir zaman görünmezler.
{# This file is managed by Ansible #}
listen {{ http_port }};Tanımsız Değişkenler Hata Verir
Varsayılan olarak var olmayan bir değişkene başvurmak, çalıştırmayı tanımsız değişken hatasıyla durdurur. Jinja2 bilerek katı davranır.
Dizeleri Dikkatle Tırnak İçine Alın
Bir ifade içindeki düz dize tırnak gerektirir. Tırnaklar olmadan Jinja2, prod ifadesini metin prod olarak değil, değişken adı olarak değerlendirir.
{{ 'production' if env == 'prod' else 'staging' }}Üç Tür Süslü Parantez
Üçlüyü hatırlayın: {{ }} bir değeri yazdırır, {% %} mantık çalıştırır ve {# #} bir yorum içerir. Her birinin ayrı bir görevi vardır.
Hızlı Kontrol
Bir şablonun, bir değişkende saklanan değeri çıktıya vermesini istiyorsunuz. Hangi sınırlayıcı bunu yazdırır?
Özet
Artık şablonlarda değişkenleri, bilgileri, sözlük anahtarlarını ve liste öğelerini okuyabilir; matematik yapabilir, dizeleri birleştirebilir ve yorum ekleyebilirsiniz. İfadeler yapılandırmayı canlandırır. ✨
Sıkça Sorulan Sorular
“Jinja2'de Değişkenler ve İfadeler” dersi ücretsiz mi?
Evet — “Jinja2'de Değişkenler ve İfadeler” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Ansible Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Ansible Academy kursu toplamda 4 dersten oluşur.
“Jinja2'de Değişkenler ve İfadeler” dersinde ne öğreneceğim?
Değerleri şablona aktarın. Ansible Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Ansible Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Ansible Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.
“Jinja2'de Değişkenler ve İfadeler” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Ansible Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Ansible Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- template Modülü ve .j2 Dosyaları
- Jinja2'de Değişkenler ve İfadeler
- Şablonlarda Döngüler ve if Blokları
- Filtreler: default, join ve upper