了解adminhtml url路径

时间:2013-08-20 10:14:12

标签: magento config adminhtml

我正在关注this tutorial from alan storm "magento_admin_hello_world_revisited",这对于理解为管理部分整理内容的基础知识有很大帮助。不幸的是,我在设置URL路径时感到有些困惑,因此当我点击菜单栏中的链接时出现404错误。

教程说我需要添加

<action>adminhtml/Adminprefcentre/index</action>

到我的adminHtml.xml中获取菜单链接。在本教程的后面,它提到我需要添加

<Adminprefcentre after="Mage_Adminhtml">Adminprefcentre</Adminprefcentre>

到我的config.xml(注意:我已将文章中描述的其他相关节点包含在config.xml中)。

当我添加<action>节点时,我认为这意味着将从菜单栏中单击的链接。当我添加<Adminprefcentre>节点时,我认为这意味着它与重写所提到的admin frontName有关。这是错的吗?

我用通常的方式Name_Module_AdminprefcentreController创建了一个控制器,并给它一个indexAction的动作。

当我点击菜单栏中的链接时,我会收到.../admin/adminprefcentre/index/key/ae6a...并找不到404。

我显然误解了所教的内容

1 - 我要添加到config.xml文件的部分是什么?

2 - 我应该在哪里解决我的404消息?

1 个答案:

答案 0 :(得分:0)

在config.xml中

<config>
  .....
  <admin>
    <routers>
        <adminhtml>
            <use>admin</use>
            <args>
                <modules>
                    <MagePal_Adminprefcentre before="Mage_Adminhtml">MagePal_Adminprefcentre_Adminhtml</MagePal_Adminprefcentre>
                </modules>
            </args>
        </adminhtml>    
    </routers>
  </admin>

您的控制器路径

  

/app/code/local/MagePal/Adminprefcentre/controllers/Adminhtml/AdminprefcentreController.php

adminhtml.xml中的

<children>
    <adminprefcentre module="adminprefcentre">
        <title>menu title</title>
        <sort_order>15</sort_order> 
        <children>                                        
            <magepal_adminprefcentre module="adminprefcentre">
                <title>Submenu Title</title>
                <sort_order>15</sort_order> 
                <action>adminhtml/adminprefcentre</action> <!-- call index action in your controller -->