gpt4 book ai didi

drupal - 如何在 Drupal7 的自定义 drupal 模块中设置权限

转载 作者:行者123 更新时间:2023-12-04 17:24:20 25 4
gpt4 key购买 nike

我创建了一个自定义 Drupal7 表单模块,但我只想向经过身份验证的用户显示该表单。我想创建同样的模块,它可以在 people->permission 中有复选框选项。我可以为所有类型的用户设置此模块的权限的部分。这里是 menu_hook

function form_example_menu() {
$items = array();
$items['examples/form-example'] = array( //this creates a URL that will call this form at "examples/form-example"
'title' => 'Example Form', //page title
'description' => 'A form to mess around with.',
'page callback' => 'drupal_get_form', //this is the function that will be called when the page is accessed. for a form, use drupal_get_form
'page arguments' => array('form_example_form'), //put the name of the form here
'access arguments' => array('access administration pages'),
'access callback' => TRUE
);
return $items;
}

我是 drupal 的新手,因此对此的任何帮助都会很明显。如果有人可以写下 hook_permission与其举出例子,那将是一个很大的帮助。

最佳答案

这里是 hook_permission 的实现

/**
* Implements hook_permission().
*/
function form_example_permission() {
return array(
'administer your module' => array(
'title' => t('Administer permission for your module'),
'description' => t('Some description that would appear on the permission page..'),
),
);
}

您必须将返回数组的键( administer your module )提供给 access arguments在执行 hook_menu因此,您的 hook_menu 实现将变为:
function form_example_menu() {
$items = array();
$items['examples/form-example'] = array( //this creates a URL that will call this form at "examples/form-example"
'title' => 'Example Form', //page title
'description' => 'A form to mess around with.',
'page callback' => 'drupal_get_form', //this is the function that will be called when the page is accessed. for a form, use drupal_get_form
'page arguments' => array('form_example_form'), //put the name of the form here
'access arguments' => array('administer your module'),
);
return $items;
}

请注意,在更改 hook_menu 中的任何内容后,您必须刷新缓存。 .您可以通过 admin/config/development/performace/ 进行操作

关于drupal - 如何在 Drupal7 的自定义 drupal 模块中设置权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23426752/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com