$rootNode
->children()
->arrayNode('form')
->info('form configuration')
->canBeUnset()
->treatNullLike(array('enabled' => true))
->treatTrueLike(array('enabled' => true))
->children()
->booleanNode('enabled')->defaultTrue()->end()
->end()
->end()
Symfony\Bundle\FrameworkBundle\DependencyInjection\Configuration
의 위 코드 중 5 번째 줄에는 canBeUnset()
이라는 방법이 사용됩니다. 나는 그것을 제거하면 아무 것도하지 않는 것처럼 보이기 때문에이 일이 무엇인지 모릅니다. 나는 내 번들을위한 의미 론적 구성을 이해하고있다.Symfony2 트리 빌더 -이 메소드는 canBeUnset()에서 무엇을합니까?
하지만 어떻게 구성 값을 설정 해제합니까? 예를 들어'framework.profiler'는'config_dev.yml'에 설정되고'config_test.yml'에는'config_dev.yml'이 포함됩니다. 프로파일 러는 'framework.profiler'같은 설정 키가없는 경우에만 비활성화됩니다. 어떻게하면 설정을 해제 할 수 있습니까? '{}'또는'~'로 설정하면 작동하지 않습니다. (Symfony 2.1, 2.2에서'framework.profiler.enabled'로 이것을 수행 할 수 있습니다.) – flu
실제로 값을 설정 해제하려면'form : false' ('{}'와'~'는 그것을 해제하지 않습니다)를 사용하십시오. – flu