如何在FOS中将角色类型更改为varchar

时间:2015-11-18 16:06:07

标签: symfony fosuserbundle

我正在使用FosUserBundle,在我的Symfony2项目中,我想知道如何将角色更改为文本而不是数组(我的意思是我将varchar的角色更改为不是作为表中的表格数据库),可能吗?

在抽象类用户中,我已经将类型更改为字符串。

table

这是我的security.yml

id          epic                    bid     offer   update_time
136449187   CS.D.EURGBP.TODAY.IP    7010.9  7011.9  1447854279749
136449186   CC.D.LCO.USS.IP         4430.1  4433.1  1447854279696
136449185   CS.D.USDJPY.TODAY.IP    12344.1 12344.9 1447854279679
136449184   CC.D.RB.USS.IP          12507   12527   1447854279636
136449179   IX.D.DAX.DAILY.IP       10955   10956   1447854279597
136449183   CS.D.COPPER.TODAY.IP    4610.8  4620.8  1447854279593
136449182   CC.D.HO.USS.IP          13969   13989   1447854279561
136449181   CS.D.EURCHF.TODAY.IP    10837.7 10839.7 1447854279559

1 个答案:

答案 0 :(得分:0)

您必须通过以下方式更改role_hierarchy

role_hierarchy:
    ROLE_CLIENT:      ROLE_USER
    ROLE_AGENT:       ROLE_USER
    ROLE_SUPER_ADMIN: ROLE_ADMIN

使用上限来尊重规范化。

解释为什么会这样: 关键是角色的名称,值是继承的值

示例:

ROLE_AGENT: ROLE_USER #An agent has agent's rights + user's rights