两个不同的人告诉我,以下是 Magento 的一个已知问题:
安装新扩展时,管理员尝试访问扩展的配置,并获得 404 页面。解决此问题的方法是注销然后登录到他的管理面板。
- 在设计扩展时有没有办法解决这个问题?
- 有关于此的未解决问题吗?
这是我发现的一页讨论这个问题。
发生这种情况是因为当您登录管理面板时,magento 会读取 ACL 规则并将它们写入会话。当您安装新模块时,您定义了会话中未列出的新 ACL 规则。
当您从 magento connect 安装模块时,您有“清除会话”按钮来强制更新。
在模块中,您可以使用类似
$session = $adminuser = Mage::getSingleton('admin/session');
/* @var $adminuser Mage_Admin_Model_User */
$adminuser = $session->getUser();
$adminuser->setReloadAclFlag(true);
$session->refreshAcl();
您还可以查看此扩展程序如何将“重新加载 Acl”按钮添加到管理面板。