Symfony YAML包含文件

时间:2015-02-20 16:00:27

标签: symfony yaml

如何将security.yml拆分为多个文件?

我知道import语句,但我需要导入role_hierarchy。

例如

security:
    encoders:
        FOS\UserBundle\Model\UserInterface: sha512
    role_hierarchy:
        ROLE_USER:       
            //IMPORT FROM USER.YML
        ROLE_SELLER:
            //IMPORT FROM ANOTHER SELLER.YML
        ROLE_ADMIN:       
           //IMPORT FROM ADMIN.YML
        ROLE_SUPER_ADMIN: [ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH]

我需要这个,因为我想为sonata admin定义角色,而我不想将它们存储在数据库中。

谢谢。

1 个答案:

答案 0 :(得分:1)

您可以将角色创建为配置参数:

// user_roles.yml
parameters:
    seller_roles: [ROLE_A, ROLE_B, ROLE_C]

并在安全配置中使用它们:

// security.yml
imports:
    - { resource: user_roles.yml }

security:
    role_hierarchy:
        ROLE_SELLER: %seller_roles%