dev-master
9999999-devSmartCore Settings Bundle.
MIT
The Requires
- php >=5.4.1
- smart-core/core-bundle dev-master
settings bundle
Wallogit.com
2017 © Pedro Peláez
SmartCore Settings Bundle.
1) Необходимо прописать в Kernel.php следующий код: ```php, (*1)
protected function dumpContainer(ConfigCache $cache, ContainerBuilder $container, $class, $baseClass)
{
parent::dumpContainer($cache, $container, $class, $baseClass);
/** @var ContainerInterface $container2 */
$container = require $cache->getPath();
$container->set('kernel', $this);
$container->get('settings')->warmupDatabase();
}
```
2) Затем в бандле по марштруту /Resources/config/settings.yml описать конфиг настроек в следующем формате:, (*2)
```yaml
# Short format
option1: value 1
# Full specs
option2:
type: TextType # CheckboxType, ChoiceType, CheckboxType etc...
hidden: true # Скрывать в админке
value: |
Многострочный
Текст.
title: Если указан заголовок, то будет отображаться вместо имени.
description: Подробное описание настройки
validation:
- NotBlank: ~
- Range:
min: 120
max: 180
choices:
ru: Россия
de: Германия
# @todo
group: main
update_callback: \My\Setting\Callback::option2 # Вызов стататического метода либо сервиса при обновлении параметра.
```
3) Чтобы файл settings.yml прочитался, необходимо создать DependencyInjection*Extension для того, чтобы бандл получил в системе Extension alias., (*3)
SmartCore Settings Bundle.
MIT
settings bundle