Wstawianie partiali za pomocą template i include
Dlaczego include współpracuje z potokami, a template nie.
Wstawianie partiali za pomocą template i include to bezpłatna lekcja Helm Academy na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Helm Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Helm Academy zawiera 4 lekcji w sumie.
Wywoływanie fragmentu
Zdefiniowany fragment niczego nie robi, dopóki nie zostanie wywołany. Helm udostępnia do tego dwie akcje: template i include.
Akcja template
Akcja template renderuje nazwany fragment bezpośrednio w miejscu użycia. Należy przekazać jej nazwę fragmentu oraz obiekt zakresu, z którego może odczytywać dane.
{{ template "mychart.labels" . }}Dlaczego template ma ograniczenia
Akcja template jest instrukcją, a nie wyrażeniem. Jej wynik trafia bezpośrednio do dokumentu i nie można przekazać go potokiem do innych funkcji.
Czas na include
Helm udostępnia funkcję include, która rozwiązuje ten problem. Renderuje ona te same fragmenty, ale zwraca wynik jako ciąg znaków, który można przekształcać.
{{ include "mychart.labels" . }}include można łączyć z potokami
Ponieważ include zwraca wartość, można przekazać ją potokiem do funkcji takich jak indent lub nindent. Dlatego w chartach niemal zawsze preferuje się include.
{{ include "mychart.labels" . | indent 4 }}Wcięcia są prawdziwym powodem
Wstawiany YAML musi znaleźć się na właściwym poziomie wcięcia. Tylko include można przekazać potokiem do nindent, dzięki czemu za każdym razem powstaje prawidłowo zagnieżdżony wynik.
metadata:
labels:
{{- include "mychart.labels" . | nindent 4 }}Argument zakresu
Kropka po nazwie fragmentu oznacza przekazywany do niego zakres. Przekazanie kropki głównej pozwala fragmentowi odczytywać .Values i .Release.
{{ include "mychart.fullname" . }}Funkcja pomocnicza tworząca nazwę
W tym przykładzie fragment zwraca nazwę, a Deployment używa funkcji include, aby wstawić ją do metadanych. Jedno źródło prawdy i wielu wywołujących.
metadata:
name: {{ include "mychart.fullname" . }}template nadal ma zastosowanie
Funkcję template nadal można spotkać w praktyce, często w przypadku fragmentów, które samodzielnie generują cały blok w osobnym wierszu, gdy przekazywanie potokiem nie jest potrzebne.
{{ template "mychart.notes" . }}Praktyczna zasada
Jeśli wynik wymaga wcięcia lub dalszego przetwarzania, sięgnij po include. Zwykłej instrukcji template używaj tylko wtedy, gdy rzeczywiście nie potrzebujesz żadnej z tych operacji.
Renderowanie w celu sprawdzenia
Uruchom helm template . i sprawdź, czy partial został rozwinięty z oczekiwanym wcięciem. Nieprawidłowo wyrównany YAML to najczęstszy błąd w tym miejscu.
helm template my-release .Szybkie sprawdzenie
Musisz wyrenderować partial i wciąć go pod kluczem labels. Która instrukcja zadziała?
Podsumowanie: template a include
Obie instrukcje wywołują partiale, ale include zwraca ciąg znaków, który można przekazać potokiem, podczas gdy template tylko emituje wynik bezpośrednio. Aby uzyskać przejrzysty YAML, preferuj include z nindent. ✨
Ucz się YAML dzięki korepetycjom AI — za darmo
Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.
- Kursy
- 30
- Lekcje
- 120
Często zadawane pytania
Czy lekcja „Wstawianie partiali za pomocą template i include” jest bezpłatna?
Tak — pełny tekst „Wstawianie partiali za pomocą template i include” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Helm Academy, przejdź na CoddyKit PRO. Kurs Helm Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Wstawianie partiali za pomocą template i include”?
Dlaczego include współpracuje z potokami, a template nie. Ćwiczysz Helm Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Helm Academy?
Nie wymagamy żadnego doświadczenia. Helm Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.
Ile czasu zajmuje lekcja „Wstawianie partiali za pomocą template i include”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Helm Academy?
Tak. Każda lekcja Helm Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Definiowanie partial za pomocą define
- Wstawianie partiali za pomocą template i include
- Standardowe helpery Fullname i Labels
- Przekazywanie zakresu do nazwanego szablonu