2012-05-21 92 views
0

如何與奏鳴曲管理員束奏鳴曲管理員束ACL級場和ACL對象場

設置與SonataAdminBundle的ACL類場範圍我設置ACL已經直截了當 至今。 現在我想深入一點。但我不能找到有關 類場範圍內的任何 文檔。

我想這樣做的是以下幾點:

比方說,我有一個產品實體。現在我想限制 ROLE_ADMIN_PRODUCT_STAFF用戶 對於該實體的「field_XY」存取權限。

ROLE_ADMIN_PRODUCT_EDITOR應該可以訪問(查看,編輯)它雖然。

任何人都得到了與這種要求的經驗?

回答

2

你可以使用$這 - > isGranted(「ROLE_ADMIN_PRODUCT_STAFF」)在configureFormFields()方法添加根據當前登錄的用戶的角色字段

例:

protected function configureFormFields(FormMapper $formMapper) 
{ 
    $formMapper 
     ->add('first_field') 
     ->add('second_field'); 

    if ($this->isGranted('ROLE_ADMIN_PRODUCT_STAFF') { 
     $formMapper 
      ->add('field_XY'); 
    } 
} 
+0

@peter thanks .. –