我有一个用户角色,只能看到 magento 后端的几页。当我以该用户身份登录时,我想将其重定向到另一个后端模块控制器而不是仪表板。
这仅适用于他的用户角色。
有人有想法吗?
您可以使用模块中的 config.xml 中的此代码控制您的访问权限。
<acl>
<resources>
<admin>
<children>
<catalog>
<children>
<yourmodule translate="title" module="yourmodule">
<title>any</title>
<sort_order>700</sort_order>
</yourmodule>
</children>
</catalog>
</children>
</admin>
</resources>
</acl>
有了这个,您可以使用系统菜单用户控件上的管理员角色用户,您可以启用或禁用选择用户组的访问权限。如果您需要控制为每个用户显示的页面,请在您的控制器上的同一模块上进行。如果您需要更多信息,请询问,我在这里完成。
现在有内置方法可用于您要完成的工作,但这里有一些见解供您将它们转化为解决方案:
System -> Configuration -> ADVANCED -> Admin
名为“启动页面”的设置可让您全局更改此设置(但不能由管理员或角色单独更改)。Mage_Admin_Model_User::getStartupPageUrl()
您将看到,如果资源不允许在先前设置中设置的任何内容,它将按顺序浏览菜单并找到第一个允许的页面因此,我认为您可以修改菜单配置来更改项目的顺序,以便您的自定义角色允许的第一个资源与默认设置的资源不同。
另一个简单的解决方案是观察一些事件(如admin_user_authenticate_after
)并将用户重定向到所需的页面,如果它来自给定的角色