在Symfony中,我尝试将YAML的一个块从parameters.yml
合并到config.yml
。我的问题是如何在Symfony 3.4中存储一些配置,然后插入到我的配置文件中。现在我有一个错误:
在Parser.php第290行中:
第188行不存在引用“'%insurance%'”(在“ <<:附近: *'%insurance%'“)。
parameters.yml
parameters:
Insurance: &insurance
list:
title: '<strong>Ubezpieczenia</strong>'
sort: ['sequence', 'ASC']
fields:
- { property: 'sequence', label: 'Kolejność'}
- { property: 'title', label: 'Tytuł'}
- { property: 'description', label: 'Opis'}
form:
fields:
- { property: 'title', type: 'text', label: 'Tytuł'}
- { property: 'description', type: 'ckeditor', label: 'Opis',
type_options: { config_name: 'simple_config' }}
- { property: 'sequence', type: 'integer', label: 'Kolejność'}
config.yml
imports:
- { resource: parameters.yml }
easy_admin:
[...]
entities:
[...]
MotorInsurance:
class: AppBundle\Entity\MotorInsurance
label: menu.motorInsurance
<<: *'%insurance%'
[...]有不相关的配置
调用Inusrance
块时我做错什么了吗?
答案 0 :(得分:0)
这不起作用。不同文件是独立分析的,因此您不能在一个YAML文件中重用另一个YAML文件中定义的引用。
解决方案是将所需的所有配置都放在同一文件中。
答案 1 :(得分:0)
所以我再试一次,@ xabbuh是正确的。我忘记了我在config.yml
中也阻止了参数。我的文件现在看起来像这样:
parameters:
locale: pl
Insurance: &insurance
list:
title: '<strong>Ubezpieczenia</strong>'
sort: ['sequence', 'ASC']
fields:
- { property: 'sequence', label: 'Kolejność'}
- { property: 'title', label: 'Tytuł'}
- { property: 'description', label: 'Opis'}
form:
fields:
- { property: 'title', type: 'text', label: 'Tytuł'}
- { property: 'description', type: 'ckeditor', label: 'Opis',
type_options: { config_name: 'simple_config' }}
- { property: 'sequence', type: 'integer', label: 'Kolejność'}
easy_admin:
[...]
entities:
[...]
MotorInsurance:
class: AppBundle\Entity\MotorInsurance
label: menu.motorInsurance
<<: *insurance
这很好用:)一切都可以被您覆盖。