Истинность и операторы в условиях
Правильно используйте eq, and, or и not
«Истинность и операторы в условиях» — бесплатный урок Helm Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Helm Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Helm Academy содержит 4 уроков всего.
Условия требуют логики
Простой if проверяет одно значение, но настоящим диаграммам нужны более сложные проверки. Helm предоставляет операторы, которые позволяют аккуратно сравнивать и объединять условия.
Функции вместо символов
В шаблонах Go нет оператора ==. Сравнения записываются как функции: сначала указывается имя функции, затем значения.
{{ if eq .Values.env "prod" }}Равенство с помощью eq
Функция eq возвращает true, когда два её аргумента равны. Это основной способ сравнивать строки, например имя окружения.
{{ if eq .Values.tier "gold" }}
priority: high
{{ end }}Противоположность — ne
Нужно проверить неравенство? Используйте ne. Функция возвращает true, когда два значения различаются, и служит противоположностью eq при проверках исключений.
{{ if ne .Values.replicas 0 }}Сравнение чисел
Для чисел Helm предлагает lt, gt, le и ge: меньше, больше и соответствующие варианты с включением равенства. Каждая функция принимает два аргумента.
{{ if gt .Values.replicas 3 }}Объединение с помощью and
Функция and истинна только тогда, когда истинны все её аргументы. Оберните каждую вложенную проверку, чтобы обе должны были пройти до вывода блока.
{{ if and .Values.tls .Values.ingress.enabled }}Любое из условий с помощью or
Функция or истинна, если истинен хотя бы один аргумент. Используйте её, когда для вывода блока достаточно одного из нескольких условий.
{{ if or .Values.debug .Values.verbose }}Инверсия с помощью not
Функция not инвертирует одно значение: true становится false, а false — true. Для флагов в стиле disabled такая запись хорошо читается.
{{ if not .Values.autoscaling.enabled }}
replicas: 1
{{ end }}Пустое значение считается ложным
Helm считает пустое значение ложным: это 0, пустая строка, nil, а также пустые списки и карты. Функция empty удобна для непосредственной проверки этого условия.
{{ if not (empty .Values.hosts) }}Группировка с помощью скобок
Поскольку это функции, вкладывайте их с помощью скобок, чтобы Helm сначала вычислял внутренний вызов и передавал его результат наружу.
{{ if and (eq .Values.env "prod") .Values.tls }}Несколько аргументов сразу
and и or не ограничены двумя входными значениями. Передайте несколько аргументов: для and Helm проверит их все, и результат будет истинным только при успешной проверке каждого.
{{ if and .Values.a .Values.b .Values.c }}Быстрая проверка
Вам нужно выводить блок только тогда, когда env равен prod.
Итоги
Теперь Вы умеете сравнивать значения с помощью eq, ne, lt, gt, объединять их через and, or и not и группировать с помощью скобок. Условия теперь могут выразить любую логику. 🎯
Часто задаваемые вопросы
Урок «Истинность и операторы в условиях» бесплатный?
Да — полный текст урока «Истинность и операторы в условиях» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Helm Academy, подпишись на CoddyKit PRO. Курс Helm Academy содержит 4 уроков всего.
Чему я научусь в уроке «Истинность и операторы в условиях»?
Правильно используйте eq, and, or и not Ты практикуешь Helm Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Helm Academy?
Предыдущий опыт не требуется. Helm Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.
Сколько времени занимает урок «Истинность и операторы в условиях»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Helm Academy?
Да. Каждый урок Helm Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Условные блоки с if и else
- Истинность и операторы в условиях
- Циклы по спискам и отображениям с range
- Ограничение области видимости блока с with