Symfony Config: узел массива или ноль

Некоторые функции моего комплекта не являются обязательными. Чтобы настроить их, я хотел бы иметь следующие два варианта. Если я хочу включить функцию:

foo:
feature:
mandatory1: 'bar'
mandatory2: 'bar2'

Однако, если я решу не использовать эту конкретную функцию, я бы хотел установить feature быть нулевым:

foo:
feature: ~

В настоящее время у меня есть следующий код:

// ...
->arrayNode('feature')
->defaultNull()
->children()
->scalarNode('mandatory1')
->isRequired()
->cannotBeEmpty()
->end()
->scalarNode('mandatory2')
->isRequired()
->cannotBeEmpty()
->end()
->end()
->end()

Тем не менее defaultNull() звонок не разрешен. Есть ли способ, которым я могу добиться этого поведения?

3

Решение

На самом деле, я нашел ответ сам. Скопировано из Symfony документы:

Если у вас есть целые разделы, которые являются необязательными и могут быть включены / отключены, вы можете воспользоваться сочетанием клавиш canBeEnabled() а также canBeDisabled() методы.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector