0

我有一个用户角色,只能看到 magento 后端的几页。当我以该用户身份登录时,我想将其重定向到另一个后端模块控制器而不是仪表板。

这仅适用于他的用户角色。

有人有想法吗?

4

2 回答 2

0

您可以使用模块中的 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>

有了这个,您可以使用系统菜单用户控件上的管理员角色用户,您可以启用或禁用选择用户组的访问权限。如果您需要控制为每个用户显示的页面,请在您的控制器上的同一模块上进行。如果您需要更多信息,请询问,我在这里完成。

于 2012-08-22T13:27:28.693 回答
0

现在有内置方法可用于您要完成的工作,但这里有一些见解供您将它们转化为解决方案:

  1. 有一个System -> Configuration -> ADVANCED -> Admin 名为“启动页面”的设置可让您全局更改此设置(但不能由管理员或角色单独更改)。
  2. Mage_Admin_Model_User::getStartupPageUrl()您将看到,如果资源不允许在先前设置中设置的任何内容,它将按顺序浏览菜单并找到第一个允许的页面

因此,我认为您可以修改菜单配置来更改项目的顺序,以便您的自定义角色允许的第一个资源与默认设置的资源不同。

另一个简单的解决方案是观察一些事件(如admin_user_authenticate_after)并将用户重定向到所需的页面,如果它来自给定的角色

于 2012-08-22T15:34:49.730 回答