【发布时间】:2016-10-03 13:35:59
【问题描述】:
我必须开发一个系统,允许我根据连接的用户预览字段。例如,我们有 3 个 Combobox。管理员可以查看和使用所有 3 个 Combobox,而简单的只有一个用户 2. 我如何在 Webform 上执行此操作? 谢谢
【问题讨论】:
我必须开发一个系统,允许我根据连接的用户预览字段。例如,我们有 3 个 Combobox。管理员可以查看和使用所有 3 个 Combobox,而简单的只有一个用户 2. 我如何在 Webform 上执行此操作? 谢谢
【问题讨论】:
更好的 Drupal 方法是使用 Permission。
在你的模块中,声明以下内容:
/**
* Implements hook_permission
*/
function yourmodule_permission() {
return array(
'access combobox 1' => array(
'title' => t('Access combobox 1'),
'description' => t('Allow user to view combobox 1')
),
'access combobox 2' => array(
'title' => t('Access combobox 2'),
'description' => t('Allow user to view combobox 2'),
),
);
}
然后,在您的表单中,使用此权限来显示您的组合框:
// Définition du composant du choix du schéma de base.
$form['combobox_1'] = array(
'#access' => user_access('access combobox 1'),
'#type' => 'select',
'#title' => 'yourtitle',
'#options' => array_keys(...),
);
$form['combobox_2'] = array(
'#access' => user_access('access combobox 2'),
'#type' => 'select',
'#title' => 'yourtitle',
'#options' => array_keys(...),
);
然后,只需在您的“/admin/people/permissions”页面中检查哪个用户角色拥有此权限;)
【讨论】: