2010-05-13 57 views

回答

1

hook_perm定義了可能的權限,然後你可以去管理員/用戶/權限分配權限到特定角色,然後使用user_access用戶是否獲得了權限(屬於包含權限的角色)。

1

hook_perm允許您通過模塊添加自定義權限。這些權限在配置用戶角色時出現。 user_access是關於確定用戶是否有權訪問特定的權限。

8

如果實施hook_perm這將定義權限這樣

/** 
* Implementation of hook_perm(). 
*/ 
function yourmodule_perm() { 
    return array('can select', 'can update', 'can delete'); 
} 

給定的模塊然而權限本身沒什麼意思......控制哪些用戶可以和不可以做的是一個方法user_access

// @ some other module function 
if (user_access('can delete')){ 
    // delete stuff 
} else { 
    drupal_access_denied(); 
} 

此外,hook_perm -defined權限的用戶可以同時做設置你的模塊菜單hook_menu使用:

// @hook_menu 
$items['modulepath'] = array(
    'title'   => 'modulename', 
    'page callback' => 'module_function', 
    'access callback' => 'user_access', 
    'access arguments' => array('can select'), 
    'type'    => MENU_NORMAL_ITEM, 
); 

不要忘記在配置您的用戶燙髮:管理/用戶/權限

+1

而hook_perm定義用戶是否允許啓用(檢查任何用戶的角色是否有可用的權限,user_access檢查在管理員/用戶/權限中啓用權限) – 2010-05-19 04:08:55

相關問題