我需要定义这样的配置参数,如公司的联系人(电话,地址等),以便在树枝模板中使用。我该怎么做?对我来说最明显的方法是将它们添加到app/config/config.yml
文件中,如下所示:
# Put parameters here that don't need to change on each machine where the app is deployed
# https://symfony.com/doc/current/best_practices/configuration.html#application-related-configuration
parameters:
locale: en
contacts:
phone: 08455555050
可以,还是有更好的方法?
此外,文档说我应该在实体中使用常量来保留永远不会改变的参数,但是我不需要一个可以保存这些数据的实体,如何使用它?我只是从Symfony开始并感到困惑。
答案 0 :(得分:2)
我已经这样做了:
app/config/services.yml
:
parameters:
locale: en
contacts:
phone: '123455678'
...
twig:
debug: '%kernel.debug%'
strict_variables: '%kernel.debug%'
globals:
contacts: '%contacts%'
嫩枝:
<span>{{ contacts.phone }}</span>
答案 1 :(得分:1)
制作一个返回贵公司的Service
返回教义实体的简单getCompany
注册服务
# app/config/services.yml
services:
AppBundle\Service\MyTwigExtension:
class: YourService
中注册服务
# app/config/config.yml
twig:
# ...
globals:
# the value is the service's id
user_management: '@AppBundle\Service\MyTwigExtension'
在您的基础树枝模板上,您可以像这样调用服务
{% set Company = company.getCompanyInfo() %}
您可以在任何需要公司详情的地方Company.getMyField
我建议您创建一个实体,以便用户可以获得后端来修改他的公司详细信息,这将是未来更灵活的