tôi đang theo dõi "Làm thế nào để lộ một cấu hình Semantic cho một Bundle" hướng dẫn chính thức cho symfony 2.cách truy cập cấu hình ngữ nghĩa trong bộ điều khiển với symfony2?
Tôi có configuration.php của tôi
namespace w9\UserBundle\DependencyInjection;
use Symfony\Component\Config\Definition\Builder\TreeBuilder;
use Symfony\Component\Config\Definition\ConfigurationInterface;
class Configuration implements ConfigurationInterface
{
/**
* {@inheritDoc}
*/
public function getConfigTreeBuilder()
{
$treeBuilder = new TreeBuilder();
$rootNode = $treeBuilder->root('w9_user');
$rootNode
->children()
->scalarNode('logintext')->defaultValue('Zareejstruj się')->end()
->end()
;
return $treeBuilder;
}
}
Và w9UserExtension.php:
namespace w9\UserBundle\DependencyInjection;
use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\Config\FileLocator;
use Symfony\Component\HttpKernel\DependencyInjection\Extension;
use Symfony\Component\DependencyInjection\Loader;
class w9UserExtension extends Extension
{
/**
* {@inheritDoc}
*/
public function load(array $configs, ContainerBuilder $container)
{
$configuration = new Configuration();
$config = $this->processConfiguration($configuration, $configs);
$loader = new Loader\YamlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));
$loader->load('services.yml');
}
}
Nghe có vẻ ngớ ngẩn, nhưng tôi không thể tìm ra cách, cách truy cập thông số logintext trong bộ điều khiển?
$logintext = $this->container->getParameter("w9_user.logintext");
không hoạt động.
Tôi đang làm gì sai?
Wow. Cảm ơn bạn. – dunqan
Điều gì sẽ xảy ra nếu tôi có một loạt các tham số cấu hình, làm thế nào tôi có thể đặt chúng cùng một lúc? – acme
@acme Tôi cũng muốn làm điều đó. Xem câu trả lời của tôi dưới đây. – LaGoutte