В пользовательском модуле magento отказано в доступе администраторам
Я создал пользовательский модуль в magento для пользователей с правами администратора, у меня есть базовая настройка, я создал роль пользователя и дал разрешение на доступ к ресурсам для этого модуля, но когда я захожу с этими учетными данными, я получаю отказ в доступе. ошибка, но когда я вхожу как администратор, я могу получить доступ к модулю. Мой файл config.xml
<?xml version="1.0"?>
<config>
<global>
<modules>
<Su_VirtualRetailer>
<version>0.1.0</version>
</Su_VirtualRetailer>
</modules>
<blocks>
<virtualretailer>
<rewrite>
<virtualretailer>Su_VirtualRetailer_Block_VirtualRetailer</virtualretailer>
</rewrite>
</virtualretailer>
</blocks>
<helpers>
<su_virtualretailer>
<!-- Helper definition needed by Magento -->
<class>Mage_Core_Helper</class>
</su_virtualretailer>
</helpers>
</global>
<frontend>
<routers>
<virtualretailer>
<use>standard</use>
<args>
<module>Su_VirtualRetailer</module>
<frontName>virtualretailer</frontName>
</args>
</virtualretailer>
</routers>
<layout>
<updates>
<virtualretailer>
<file>virtualretailer.xml</file>
</virtualretailer>
</updates>
</layout>
</frontend>
<admin>
<routers>
<adminhtml>
<args>
<modules>
<su_virtualretailer before="Mage_Adminhtml">Su_VirtualRetailer_Adminhtml</su_virtualretailer>
</modules>
</args>
</adminhtml>
</routers>
</admin>
</config>
Мой adminhtml.xml
<?xml version="1.0" encoding="UTF-8"?>
<config>
<menu>
<retailertab module="su_virtualretailer" translate="title">
<title>Virtual Retailer</title>
<sort_order>100</sort_order>
<children>
<index module="su_virtualretailer" translate="title">
<title>Home</title>
<sort_order>1</sort_order>
<action>adminhtml/custom</action>
</index>
<myaccount module="su_virtualretailer" translate="title">
<title>My Account</title>
<sort_order>2</sort_order>
<action>adminhtml/custom/list</action>
</myaccount>
<shop module="su_virtualretailer" translate="title">
<title>Shop</title>
<sort_order>3</sort_order>
<action>adminhtml/custom/shop</action>
</shop>
</children>
</retailertab>
</menu>
<acl>
<resources>
<admin>
<children>
<retailertab translate="title" module="su_virtualretailer">
<title>Virtual Retailer</title>
<sort_order>-100</sort_order>
<children>
<index translate="title">
<title>Home Action</title>
<sort_order>1</sort_order>
</index>
<myaccount translate="title">
<title>My Account Action</title>
<sort_order>2</sort_order>
</myaccount>
<shop translate="title">
<title>Shop Action</title>
<sort_order>3</sort_order>
</shop>
</children>
</retailertab>
</children>
</admin>
</resources>
</acl>
</config>
Я дал разрешения ACL в config.xml, я не уверен, что я сделал что-то не так здесь. снимок экрана с ошибкой при входе администратора
2 ответа
Наконец я получил ответ, в файле config.xml я дал следующий код
<acl>
<resources>
<all>
<title>Allow Everything</title>
</all>
</resources>
</acl>
и в моем файле контроллера я дал ниже код
protected function _isAllowed(){
return true;
}
тогда все работает как положено
Проблема в вашем файле adminhtml.xml
<config>
<menu>
<retailertab module="su_virtualretailer" translate="title">
<title>Virtual Retailer</title>
<sort_order>100</sort_order>
<children>
<index module="su_virtualretailer" translate="title">
<title>Home</title>
<sort_order>1</sort_order>
<action>adminhtml/custom</action>
</index>
<myaccount module="su_virtualretailer" translate="title">
<title>My Account</title>
<sort_order>2</sort_order>
<action>adminhtml/custom/list</action>
</myaccount>
<shop module="su_virtualretailer" translate="title">
<title>Shop</title>
<sort_order>3</sort_order>
<action>adminhtml/custom/shop</action>
</shop>
</children>
</retailertab>
</menu>
<acl>
<resources>
<admin>
<children>
<retailertab translate="title" module="su_virtualretailer">
<title>Virtual Retailer</title>
<sort_order>-100</sort_order>
<children>
<index translate="title">
<title>Home Action</title>
<sort_order>1</sort_order>
</index>
<myaccount translate="title">
<title>My Account Action</title>
<sort_order>2</sort_order>
</myaccount>
<shop translate="title">
<title>Shop Action</title>
<sort_order>3</sort_order>
</shop>
</children>
</retailertab>
</children>
</admin>
</resources>
</acl>
</config>
Обновите код, как указано выше.
просто измените свой пользовательский узел дерева ACL на retailertab