如果我在Symfony路由中输入了无效的路由配置密钥,则会收到一条有用的异常消息,其中列出了所有有效的Symfony路由配置密钥
路由文件“ path / to / config / routes.yaml”包含不受支持的“ route_name”:“ invalid_key_name”键。预期值之一:“资源”,“类型”,“前缀”,“路径”,“主机”,“方案”,“方法”,“默认值”,“需求”,“选项”,“条件”,“控制器” ”,“名称前缀”,“ trailing_slash_on_root”
这些键中的大多数都记录在the Symfony site上的某个位置。但是,我找不到options
键的文档。
有人知道这应该(或可以)用于什么吗?
答案 0 :(得分:0)
深入研究路线对象的类文件即可
#File: vendor/symfony/routing/Route.php
public function setOptions(array $options)
{
$this->options = array(
'compiler_class' => 'Symfony\\Component\\Routing\\RouteCompiler',
);
return $this->addOptions($options);
}
也就是说-Symfony在options数组上设置了一个compiler_class
字段,options:
配置键就是链接到此options数组的。然后,Symfony在同一类中使用此编译器类选项
#File: vendor/symfony/routing/Route.php
public function compile()
{
if (null !== $this->compiled) {
return $this->compiled;
}
$class = $this->getOption('compiler_class');
return $this->compiled = $class::compile($this);
}
因此-大概99%的Symfony开发人员都不需要/不想使用它们,但是它仍然存在。