Drupal访问管理员面板被拒绝

时间:2011-04-15 10:27:02

标签: drupal

在hook_menu中插入新菜单项。但菜单项没有反映出来。所以在模块中我将语句添加为

function {module_name}_menu_alter(&$items) {
    $items['archives/faculty_article'] = array(
           'access callback'=>'archives_list_faculty_article',
         'access arguments'=>array(1),
        );
    $items['archives/faculty_article']['access callback'] = 'user_access';
}

提出了问题 1.无法访问管理面板 2.用户警告:表'nodewords_custom'不存在查询:SELECT * FROM nodewords_custom ORDER BY weight ASC

如何解决问题。

1 个答案:

答案 0 :(得分:1)

在hook_menu()中创建新菜单项后,是否刷新了菜单缓存?如果您希望评估新的菜单条目,则必须使用它。

关于hook_menu_alter()中的代码片段,您没有正确更改菜单项,要么重写项目的完整属性(标题,页面回调,访问回调等)要么只是覆盖一个属性(例如你为访问回调做了什么)。 如果要覆盖两个属性,则必须执行以下操作:

$items['archives/faculty_article']['access callback'] = 'user_access';
$items['archives/faculty_article']['access arguments'] = array('view');

实现hook_menu_alter()之后,您还必须刷新缓存。

这是问题1.对于问题2,这意味着您没有正确安装节点字,尝试禁用它,卸载它然后重新启用它以尝试解决问题。它应该为你重新创建表格。